aidevops 3.38.18 → 3.38.20
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 +9 -1
- package/VERSION +1 -1
- package/aidevops.sh +25 -1
- package/bun.lock +18 -20
- package/package.json +5 -5
- package/setup.sh +5 -1
package/README.md
CHANGED
|
@@ -25,7 +25,7 @@ token efficiency, and quality control built in.**
|
|
|
25
25
|
[](https://qlty.sh/gh/marcusquinn/projects/aidevops)
|
|
26
26
|
[](https://app.codacy.com/gh/marcusquinn/aidevops/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
|
|
27
27
|
[](https://opensource.org/licenses/MIT)
|
|
28
|
-
[](https://github.com/marcusquinn/aidevops/releases)
|
|
29
29
|
[](https://www.npmjs.com/package/aidevops)
|
|
30
30
|
[](https://github.com/marcusquinn/homebrew-tap)
|
|
31
31
|
|
|
@@ -189,6 +189,14 @@ aidevops security # Security posture, hygiene and supply-chain che
|
|
|
189
189
|
aidevops metrics generate # Refresh local repository metrics
|
|
190
190
|
```
|
|
191
191
|
|
|
192
|
+
For a registered repository whose GitHub Actions cannot run, record
|
|
193
|
+
`aidevops repos actions off owner/repo "billing blocked"`. Full-loop and worker
|
|
194
|
+
verification then uses the repository's configured local checks with trusted
|
|
195
|
+
exact-head PR evidence, without polling unavailable Actions. Restore normal CI
|
|
196
|
+
with `aidevops repos actions on owner/repo`. Non-billing failures, reviews and
|
|
197
|
+
native branch protection still block; see the
|
|
198
|
+
[local-verification contract](.agents/reference/ci-gate-policy.md#github-actions-unavailable).
|
|
199
|
+
|
|
192
200
|
If a registered repository loses its ignored `.aidevops.json`, first preview
|
|
193
201
|
`aidevops project-config restore owner/repo --backup /path/to/verified-backup.json`.
|
|
194
202
|
Without a verified backup, omit `--backup` to preview only the explicitly enabled
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
3.38.
|
|
1
|
+
3.38.20
|
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.38.
|
|
8
|
+
# Version: 3.38.20
|
|
9
9
|
|
|
10
10
|
set -euo pipefail
|
|
11
11
|
|
|
@@ -911,6 +911,24 @@ _repos_maintenance() {
|
|
|
911
911
|
return 0
|
|
912
912
|
}
|
|
913
913
|
|
|
914
|
+
_repos_actions() {
|
|
915
|
+
local state="${1:-}" selector="${2:-}" reason="${3:-}"
|
|
916
|
+
case "$state" in
|
|
917
|
+
on) state="available" ;;
|
|
918
|
+
off) state="unavailable" ;;
|
|
919
|
+
*)
|
|
920
|
+
print_error "Usage: aidevops repos actions <on|off> [slug-or-path] [reason]"
|
|
921
|
+
return 1
|
|
922
|
+
;;
|
|
923
|
+
esac
|
|
924
|
+
if [[ -z "$selector" ]]; then
|
|
925
|
+
selector=$(git rev-parse --show-toplevel 2>/dev/null) || return 1
|
|
926
|
+
fi
|
|
927
|
+
set_repo_actions "$selector" "$state" "$reason" || return 1
|
|
928
|
+
print_success "GitHub Actions capability: $state for $selector"
|
|
929
|
+
return 0
|
|
930
|
+
}
|
|
931
|
+
|
|
914
932
|
# Repos management command
|
|
915
933
|
cmd_repos() {
|
|
916
934
|
local action="${1:-list}"
|
|
@@ -941,6 +959,10 @@ cmd_repos() {
|
|
|
941
959
|
shift
|
|
942
960
|
_repos_maintenance "$@"
|
|
943
961
|
;;
|
|
962
|
+
actions)
|
|
963
|
+
shift
|
|
964
|
+
_repos_actions "$@"
|
|
965
|
+
;;
|
|
944
966
|
*)
|
|
945
967
|
echo "Usage: aidevops repos <command>"
|
|
946
968
|
echo ""
|
|
@@ -953,6 +975,8 @@ cmd_repos() {
|
|
|
953
975
|
echo " Guarded owner-layout migration with durable receipts"
|
|
954
976
|
echo " maintenance <on|off> [repo]"
|
|
955
977
|
echo " Include/exclude a registered repo from recurring automation"
|
|
978
|
+
echo " actions <on|off> [repo] [reason]"
|
|
979
|
+
echo " Record GitHub Actions availability; off requires exact-head local checks"
|
|
956
980
|
;;
|
|
957
981
|
esac
|
|
958
982
|
}
|
package/bun.lock
CHANGED
|
@@ -8,18 +8,18 @@
|
|
|
8
8
|
"@vitejs/plugin-react": "6.1.1",
|
|
9
9
|
"elysia": "1.4.30",
|
|
10
10
|
"file-type": "21.3.4",
|
|
11
|
-
"hono": "4.13.
|
|
12
|
-
"vite": "8.3.
|
|
11
|
+
"hono": "4.13.11",
|
|
12
|
+
"vite": "8.3.1",
|
|
13
13
|
},
|
|
14
14
|
"devDependencies": {
|
|
15
|
-
"@secretlint/secretlint-rule-preset-recommend": "13.0.
|
|
15
|
+
"@secretlint/secretlint-rule-preset-recommend": "13.0.6",
|
|
16
16
|
"@types/bun": "1.4.2",
|
|
17
17
|
"@types/react": "19.3.0",
|
|
18
18
|
"@types/react-dom": "19.2.7",
|
|
19
19
|
"ajv": "8.20.0",
|
|
20
20
|
"react": "19.3.0",
|
|
21
21
|
"react-dom": "19.3.0",
|
|
22
|
-
"secretlint": "13.0.
|
|
22
|
+
"secretlint": "13.0.6",
|
|
23
23
|
"typescript": "7.0.2",
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
@@ -161,27 +161,27 @@
|
|
|
161
161
|
|
|
162
162
|
"@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.1", "", {}, "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw=="],
|
|
163
163
|
|
|
164
|
-
"@secretlint/config-creator": ["@secretlint/config-creator@13.0.
|
|
164
|
+
"@secretlint/config-creator": ["@secretlint/config-creator@13.0.6", "", { "dependencies": { "@secretlint/types": "13.0.6" } }, "sha512-vXINUCWnUS0IAVwj84mcY0seiOZSuVHMS1zLu0uipBPDZNCJKd5VLrCV+RfAKMNkLqmFVE4pTeNCevJl5eSZLw=="],
|
|
165
165
|
|
|
166
|
-
"@secretlint/config-loader": ["@secretlint/config-loader@13.0.
|
|
166
|
+
"@secretlint/config-loader": ["@secretlint/config-loader@13.0.6", "", { "dependencies": { "@secretlint/profiler": "13.0.6", "@secretlint/resolver": "13.0.6", "@secretlint/types": "13.0.6", "ajv": "^8.20.0", "debug": "^4.4.3", "rc-config-loader": "^4.1.4" } }, "sha512-+7QvpAUzE4MCHUmL3O+pOZy/j5oqUMAATmRTp0RPAxKuUpxPe/WmzQv9UW679EzhOnC4sxkp6j4L9wFCTe03pQ=="],
|
|
167
167
|
|
|
168
|
-
"@secretlint/core": ["@secretlint/core@13.0.
|
|
168
|
+
"@secretlint/core": ["@secretlint/core@13.0.6", "", { "dependencies": { "@secretlint/profiler": "13.0.6", "@secretlint/types": "13.0.6", "debug": "^4.4.3", "structured-source": "^4.0.0" } }, "sha512-sZ4fKF3/eHO706p8wovzQlaRMfS4k272jAF9LCj/B4HqxhuFiZi/Nx4amWQAYFOcEfrmVpGQmlgHDHDNx+22fw=="],
|
|
169
169
|
|
|
170
|
-
"@secretlint/formatter": ["@secretlint/formatter@13.0.
|
|
170
|
+
"@secretlint/formatter": ["@secretlint/formatter@13.0.6", "", { "dependencies": { "@secretlint/resolver": "13.0.6", "@secretlint/types": "13.0.6", "@textlint/linter-formatter": "^15.7.0", "@textlint/module-interop": "^15.7.0", "@textlint/types": "^15.7.0", "chalk": "^5.6.2", "debug": "^4.4.3", "pluralize": "^8.0.0", "strip-ansi": "^7.2.0", "table": "^6.9.0", "terminal-link": "^5.0.0" } }, "sha512-m5jnjSvB99uEB3K5wH8Sj2cG+bMmLYY5/RxRSVsn0Eik+Bf28ScdkRUx4yXhfyFXUf65aH9Jt42BB/9VHLgUtA=="],
|
|
171
171
|
|
|
172
|
-
"@secretlint/node": ["@secretlint/node@13.0.
|
|
172
|
+
"@secretlint/node": ["@secretlint/node@13.0.6", "", { "dependencies": { "@secretlint/config-loader": "13.0.6", "@secretlint/core": "13.0.6", "@secretlint/formatter": "13.0.6", "@secretlint/profiler": "13.0.6", "@secretlint/source-creator": "13.0.6", "@secretlint/types": "13.0.6", "debug": "^4.4.3", "p-map": "^7.0.7" } }, "sha512-cYgh4qYDkerJzm/X0YRyqTywsZSsPKbOS7ddVl9+jELq7frCwZ8wpFh5sEPXZ7iH89DjYIfXbtz2HPYvFq9NNQ=="],
|
|
173
173
|
|
|
174
|
-
"@secretlint/profiler": ["@secretlint/profiler@13.0.
|
|
174
|
+
"@secretlint/profiler": ["@secretlint/profiler@13.0.6", "", {}, "sha512-I8ci8bwwtJfzUsLTgrf2j8aOBeb9myKgzkVeKQEae76sx9sBbd3d/DD+4pKYZE0jdtNomUIV/ogtAXvhP0iU6Q=="],
|
|
175
175
|
|
|
176
|
-
"@secretlint/resolver": ["@secretlint/resolver@13.0.
|
|
176
|
+
"@secretlint/resolver": ["@secretlint/resolver@13.0.6", "", {}, "sha512-HHTfCjEZvChOFebJ/JBpsqCM/q8hmS6qZq80xbQdVEsdjMmTcTX8E/uvYkOuyozuLCWePpJCnZ6nIxceSvYoog=="],
|
|
177
177
|
|
|
178
|
-
"@secretlint/secretlint-rule-preset-recommend": ["@secretlint/secretlint-rule-preset-recommend@13.0.
|
|
178
|
+
"@secretlint/secretlint-rule-preset-recommend": ["@secretlint/secretlint-rule-preset-recommend@13.0.6", "", {}, "sha512-5OdYoPKs7LznSY/mFgpJlSY8ayF+clq0gdfOE0ERVfvUifmIDz0yG/d1ij3wZmfpyOw33tk12zUcDZqrXHFodA=="],
|
|
179
179
|
|
|
180
|
-
"@secretlint/source-creator": ["@secretlint/source-creator@13.0.
|
|
180
|
+
"@secretlint/source-creator": ["@secretlint/source-creator@13.0.6", "", { "dependencies": { "@secretlint/types": "13.0.6", "istextorbinary": "^9.5.0" } }, "sha512-cKO2Y0gh7RMNo4vMtJgmPMDHCuJZSP3aPZ0y+KzWST3wMTNCnPQcECeQeEccdL8b2oBfVLD/UJrb7fbhumXGsw=="],
|
|
181
181
|
|
|
182
|
-
"@secretlint/types": ["@secretlint/types@13.0.
|
|
182
|
+
"@secretlint/types": ["@secretlint/types@13.0.6", "", {}, "sha512-N1pXCKblM7rdbQ+wAufLLUQ4ToukuPjsCauR42fHlemp8+NXvI4FjDnvLacNbSb/9ccmrY1Isb6WjUfHZgnrRQ=="],
|
|
183
183
|
|
|
184
|
-
"@secretlint/walker": ["@secretlint/walker@13.0.
|
|
184
|
+
"@secretlint/walker": ["@secretlint/walker@13.0.6", "", { "dependencies": { "ignore": "^7.0.8", "picomatch": "^4.0.7" } }, "sha512-i5xSlLTX+QI3AmbsR2DfR2KbQIG74qfhQovzhKOp//or9t1SL4N43w8N5/6NyESgt3XHEY2QiTSvQTOU10uHNg=="],
|
|
185
185
|
|
|
186
186
|
"@sinclair/typebox": ["@sinclair/typebox@0.34.41", "", {}, "sha512-6gS8pZzSXdyRHTIqoqSVknxolr1kzfy4/CeDnrzsVz8TTIWUbOBr6gnzOmTYJ3eXQNh4IYHIGi5aIL7sOZ2G/g=="],
|
|
187
187
|
|
|
@@ -307,7 +307,7 @@
|
|
|
307
307
|
|
|
308
308
|
"has-flag": ["has-flag@5.0.1", "", {}, "sha512-CsNUt5x9LUdx6hnk/E2SZLsDyvfqANZSUq4+D3D8RzDJ2M+HDTIkF60ibS1vHaK55vzgiZw1bEPFG9yH7l33wA=="],
|
|
309
309
|
|
|
310
|
-
"hono": ["hono@4.13.
|
|
310
|
+
"hono": ["hono@4.13.11", "", {}, "sha512-/SMX/RQNJn7oNmFwH6DtwDqcrzZU2otm1FD6OJe2cWF6cfy/F8hq0XVBv7xW3FTJshRQwuBnXHDq2kNsdZnshg=="],
|
|
311
311
|
|
|
312
312
|
"hosted-git-info": ["hosted-git-info@9.0.3", "", { "dependencies": { "lru-cache": "^11.1.0" } }, "sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg=="],
|
|
313
313
|
|
|
@@ -397,7 +397,7 @@
|
|
|
397
397
|
|
|
398
398
|
"scheduler": ["scheduler@0.28.0", "", {}, "sha512-juorfCmIkIw8tT+p5BXSm6PJjQF/ycEYmKyzURCIt/RaZIhL+PulbQ9Yu2z1HdOJDdqDTlxA1+xKBmHXJsczAw=="],
|
|
399
399
|
|
|
400
|
-
"secretlint": ["secretlint@13.0.
|
|
400
|
+
"secretlint": ["secretlint@13.0.6", "", { "dependencies": { "@secretlint/config-creator": "13.0.6", "@secretlint/formatter": "13.0.6", "@secretlint/node": "13.0.6", "@secretlint/profiler": "13.0.6", "@secretlint/resolver": "13.0.6", "@secretlint/walker": "13.0.6", "debug": "^4.4.3", "read-pkg": "^10.1.0" }, "bin": { "secretlint": "bin/secretlint.js" } }, "sha512-9l+ZtJTOukuRrFOY9iTNEteO84zyPJ68LgYMUj6T5GOBRH7tnyV+UDIO/SrADbjRSx7eDGZ8q8+CxHkqhoVOwA=="],
|
|
401
401
|
|
|
402
402
|
"semver": ["semver@7.7.3", "", { "bin": "bin/semver.js" }, "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q=="],
|
|
403
403
|
|
|
@@ -453,9 +453,7 @@
|
|
|
453
453
|
|
|
454
454
|
"version-range": ["version-range@4.15.0", "", {}, "sha512-Ck0EJbAGxHwprkzFO966t4/5QkRuzh+/I1RxhLgUKKwEn+Cd8NwM60mE3AqBZg5gYODoXW0EFsQvbZjRlvdqbg=="],
|
|
455
455
|
|
|
456
|
-
"vite": ["vite@8.3.
|
|
457
|
-
|
|
458
|
-
"@secretlint/walker/picomatch": ["picomatch@4.0.5", "", {}, "sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A=="],
|
|
456
|
+
"vite": ["vite@8.3.1", "", { "dependencies": { "lightningcss": "^1.33.0", "picomatch": "^4.0.7", "postcss": "^8.5.28", "rolldown": "~1.2.9", "tinyglobby": "^0.2.17" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "@vitejs/devtools": "^0.7.1", "esbuild": "^0.27.0 || ^0.28.0", "jiti": ">=1.21.0", "less": "^4.0.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "@vitejs/devtools", "esbuild", "jiti", "less", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-/bvH9E9tmCXRGp2uXY3WbOldqpTwFkbha/8ANaEQ6VkxhH60KyqLwgZq6lG2y+4uT55x9+9eUHMpQ7uGnOCKjA=="],
|
|
459
457
|
|
|
460
458
|
"@textlint/linter-formatter/chalk": ["chalk@4.1.2", "", { "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" } }, "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="],
|
|
461
459
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "aidevops",
|
|
3
|
-
"version": "3.38.
|
|
3
|
+
"version": "3.38.20",
|
|
4
4
|
"description": "AI DevOps Framework - AI-assisted development workflows, code quality, and deployment automation",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"packageManager": "bun@1.3.11",
|
|
@@ -58,18 +58,18 @@
|
|
|
58
58
|
"@vitejs/plugin-react": "6.1.1",
|
|
59
59
|
"elysia": "1.4.30",
|
|
60
60
|
"file-type": "21.3.4",
|
|
61
|
-
"hono": "4.13.
|
|
62
|
-
"vite": "8.3.
|
|
61
|
+
"hono": "4.13.11",
|
|
62
|
+
"vite": "8.3.1"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
|
-
"@secretlint/secretlint-rule-preset-recommend": "13.0.
|
|
65
|
+
"@secretlint/secretlint-rule-preset-recommend": "13.0.6",
|
|
66
66
|
"@types/bun": "1.4.2",
|
|
67
67
|
"@types/react": "19.3.0",
|
|
68
68
|
"@types/react-dom": "19.2.7",
|
|
69
69
|
"ajv": "8.20.0",
|
|
70
70
|
"react": "19.3.0",
|
|
71
71
|
"react-dom": "19.3.0",
|
|
72
|
-
"secretlint": "13.0.
|
|
72
|
+
"secretlint": "13.0.6",
|
|
73
73
|
"typescript": "7.0.2"
|
|
74
74
|
},
|
|
75
75
|
"overrides": {
|
package/setup.sh
CHANGED
|
@@ -17,7 +17,7 @@ fi
|
|
|
17
17
|
# AI Assistant Server Access Framework Setup Script
|
|
18
18
|
# Helps developers set up the framework for their infrastructure
|
|
19
19
|
#
|
|
20
|
-
# Version: 3.38.
|
|
20
|
+
# Version: 3.38.20
|
|
21
21
|
#
|
|
22
22
|
# Quick Install:
|
|
23
23
|
# npm install -g aidevops && aidevops update (recommended)
|
|
@@ -1393,6 +1393,10 @@ _setup_run_ai_session_incremental() {
|
|
|
1393
1393
|
local current_sha=""
|
|
1394
1394
|
local changed_files=""
|
|
1395
1395
|
|
|
1396
|
+
# Updates must heal scheduler drift even when no deploy stage changed.
|
|
1397
|
+
if [[ "$os" != "Darwin" ]]; then
|
|
1398
|
+
_reconcile_linux_scheduler_duplicates
|
|
1399
|
+
fi
|
|
1396
1400
|
print_info "AI-session setup mode: applying changed deploy stages only"
|
|
1397
1401
|
if ! _setup_git_checkout_available "$INSTALL_DIR" || [[ ! -f "$stamp_file" ]]; then
|
|
1398
1402
|
print_warning "AI-session incremental setup needs a git checkout and deployed SHA stamp"
|