@technomoron/agent-run 0.99.41 → 0.99.42
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/CHANGES +8 -0
- package/dist/checks.js +1 -1
- package/dist/commands.js +3 -1
- package/dist/project.js +6 -0
- package/dist/runtime/postflight.js +1 -1
- package/package.json +1 -1
package/CHANGES
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
CHANGES
|
|
2
2
|
=======
|
|
3
3
|
|
|
4
|
+
Version 0.99.42 (2026-09-25)
|
|
5
|
+
----------------------------
|
|
6
|
+
* Apply repository AI-file checks only to project scopes and actual repositories.
|
|
7
|
+
Default-scope launches from a home directory no longer scan protected Windows
|
|
8
|
+
folders or treat personal Codex and Claude settings as repository files.
|
|
9
|
+
* Skip the startup scan when the repository AI-file guard is disabled, and
|
|
10
|
+
preserve personal Claude settings during default-scope postflight checks.
|
|
11
|
+
|
|
4
12
|
Version 0.99.41 (2026-09-25)
|
|
5
13
|
----------------------------
|
|
6
14
|
* Use a shared Codex home with native named profiles, keeping project
|
package/dist/checks.js
CHANGED
|
@@ -25,7 +25,7 @@ function checkProject(projectRoot) {
|
|
|
25
25
|
return findings;
|
|
26
26
|
}
|
|
27
27
|
const agentDir = (0, project_1.resolveAgentDir)(projectRoot);
|
|
28
|
-
if (profileForbidsLocalAiFiles(projectRoot, agentDir, profileResult.profile)) {
|
|
28
|
+
if ((0, project_1.hasProjectFileScope)(projectRoot, profileResult.profile) && profileForbidsLocalAiFiles(projectRoot, agentDir, profileResult.profile)) {
|
|
29
29
|
for (const file of (0, project_1.findLocalAiFiles)(projectRoot, agentDir)) {
|
|
30
30
|
findings.push({ message: `local AI file in project: ${file}`, severity: 'ERROR' });
|
|
31
31
|
}
|
package/dist/commands.js
CHANGED
|
@@ -187,8 +187,10 @@ function requireProfile(tool, agentDir) {
|
|
|
187
187
|
process.exit(1);
|
|
188
188
|
}
|
|
189
189
|
function checkLocalAiFiles(command, projectRoot, agentDir, context, allowLocal) {
|
|
190
|
+
if (!context.guardrails.forbidRepoAiFiles || !(0, project_1.hasProjectFileScope)(projectRoot, context.profile))
|
|
191
|
+
return;
|
|
190
192
|
const files = (0, project_1.findLocalAiFiles)(projectRoot, agentDir);
|
|
191
|
-
if (
|
|
193
|
+
if (files.length === 0) {
|
|
192
194
|
return;
|
|
193
195
|
}
|
|
194
196
|
if (!allowLocal) {
|
package/dist/project.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.resolveAgentDir = resolveAgentDir;
|
|
4
4
|
exports.findLocalAiFiles = findLocalAiFiles;
|
|
5
5
|
exports.findSourceRepos = findSourceRepos;
|
|
6
|
+
exports.hasProjectFileScope = hasProjectFileScope;
|
|
6
7
|
exports.isIgnoredDir = isIgnoredDir;
|
|
7
8
|
exports.warnForLocalAiFiles = warnForLocalAiFiles;
|
|
8
9
|
exports.failForLocalAiFiles = failForLocalAiFiles;
|
|
@@ -74,6 +75,11 @@ function findSourceRepos(rootPath) {
|
|
|
74
75
|
function looksLikeRepoRoot(dir) {
|
|
75
76
|
return fs.existsSync(path.join(dir, '.git')) || fs.existsSync(path.join(dir, 'package.json'));
|
|
76
77
|
}
|
|
78
|
+
function hasProjectFileScope(projectRoot, profile) {
|
|
79
|
+
// The default brain scope also serves home directories and other non-project
|
|
80
|
+
// folders. Personal tool configuration there is not repository-local state.
|
|
81
|
+
return profile !== 'default' || looksLikeRepoRoot(projectRoot);
|
|
82
|
+
}
|
|
77
83
|
function isIgnoredDir(dir) {
|
|
78
84
|
if (fs.existsSync(path.join(dir, constants_1.IGNORE_FILE_NAME))) {
|
|
79
85
|
return true;
|
|
@@ -5,7 +5,7 @@ const fs = require("fs");
|
|
|
5
5
|
const path = require("path");
|
|
6
6
|
const project_1 = require("../project");
|
|
7
7
|
function postflightProjectCheck(context, allowLocal, code) {
|
|
8
|
-
if (!context.guardrails.forbidRepoAiFiles) {
|
|
8
|
+
if (!context.guardrails.forbidRepoAiFiles || !(0, project_1.hasProjectFileScope)(context.projectRoot, context.profile)) {
|
|
9
9
|
return code;
|
|
10
10
|
}
|
|
11
11
|
if (!allowLocal) {
|