@ironbee-ai/cli 0.8.3 → 0.9.1
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/CHANGELOG.md +12 -0
- package/README.md +42 -17
- package/dist/analytics/projection.d.ts.map +1 -1
- package/dist/analytics/projection.js +28 -14
- package/dist/analytics/projection.js.map +1 -1
- package/dist/clients/claude/commands/ironbee-verify.md +19 -106
- package/dist/clients/claude/hooks/require-verdict.d.ts +3 -3
- package/dist/clients/claude/hooks/require-verdict.js +5 -5
- package/dist/clients/claude/hooks/require-verification.d.ts +6 -5
- package/dist/clients/claude/hooks/require-verification.d.ts.map +1 -1
- package/dist/clients/claude/hooks/require-verification.js +20 -17
- package/dist/clients/claude/hooks/require-verification.js.map +1 -1
- package/dist/clients/claude/hooks/track-action-monitor.d.ts.map +1 -1
- package/dist/clients/claude/hooks/track-action-monitor.js +4 -1
- package/dist/clients/claude/hooks/track-action-monitor.js.map +1 -1
- package/dist/clients/claude/hooks/track-action.d.ts +11 -8
- package/dist/clients/claude/hooks/track-action.d.ts.map +1 -1
- package/dist/clients/claude/hooks/track-action.js +14 -9
- package/dist/clients/claude/hooks/track-action.js.map +1 -1
- package/dist/clients/claude/index.d.ts.map +1 -1
- package/dist/clients/claude/index.js +79 -18
- package/dist/clients/claude/index.js.map +1 -1
- package/dist/clients/claude/platforms/command-verify.backend.md +74 -0
- package/dist/clients/claude/platforms/command-verify.browser.md +108 -0
- package/dist/clients/claude/platforms/command-verify.node.md +67 -0
- package/dist/clients/claude/platforms/rule.backend.md +23 -0
- package/dist/clients/claude/platforms/rule.browser.md +17 -0
- package/dist/clients/claude/{fragments → platforms}/rule.node.md +3 -3
- package/dist/clients/claude/platforms/skill.backend.md +65 -0
- package/dist/clients/claude/platforms/skill.browser.md +31 -0
- package/dist/clients/claude/{fragments → platforms}/skill.node.md +2 -2
- package/dist/clients/claude/rules/ironbee-verification.md +14 -13
- package/dist/clients/claude/skills/ironbee-verification.md +19 -49
- package/dist/clients/cursor/commands/ironbee-verify/SKILL.md +21 -108
- package/dist/clients/cursor/hooks/require-verdict.d.ts +1 -1
- package/dist/clients/cursor/hooks/require-verdict.js +3 -3
- package/dist/clients/cursor/hooks/require-verification.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/require-verification.js +9 -5
- package/dist/clients/cursor/hooks/require-verification.js.map +1 -1
- package/dist/clients/cursor/hooks/track-action-monitor.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/track-action-monitor.js +4 -1
- package/dist/clients/cursor/hooks/track-action-monitor.js.map +1 -1
- package/dist/clients/cursor/hooks/track-action.d.ts +14 -12
- package/dist/clients/cursor/hooks/track-action.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/track-action.js +25 -16
- package/dist/clients/cursor/hooks/track-action.js.map +1 -1
- package/dist/clients/cursor/index.d.ts.map +1 -1
- package/dist/clients/cursor/index.js +45 -11
- package/dist/clients/cursor/index.js.map +1 -1
- package/dist/clients/cursor/platforms/command-verify.backend.md +74 -0
- package/dist/clients/cursor/platforms/command-verify.browser.md +108 -0
- package/dist/clients/cursor/platforms/command-verify.node.md +67 -0
- package/dist/clients/cursor/platforms/rule.backend.md +23 -0
- package/dist/clients/cursor/platforms/rule.browser.md +17 -0
- package/dist/clients/cursor/{fragments → platforms}/rule.node.md +3 -3
- package/dist/clients/cursor/platforms/skill.backend.md +65 -0
- package/dist/clients/cursor/platforms/skill.browser.md +31 -0
- package/dist/clients/cursor/{fragments → platforms}/skill.node.md +2 -2
- package/dist/clients/cursor/rules/ironbee-verification.mdc +14 -13
- package/dist/clients/cursor/skills/ironbee-verification.md +19 -49
- package/dist/commands/backend.d.ts +17 -0
- package/dist/commands/backend.d.ts.map +1 -0
- package/dist/commands/backend.js +58 -0
- package/dist/commands/backend.js.map +1 -0
- package/dist/commands/browser.d.ts +19 -0
- package/dist/commands/browser.d.ts.map +1 -0
- package/dist/commands/browser.js +60 -0
- package/dist/commands/browser.js.map +1 -0
- package/dist/commands/config.d.ts +5 -5
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +13 -11
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/cycle-toggle.d.ts +89 -0
- package/dist/commands/cycle-toggle.d.ts.map +1 -0
- package/dist/commands/cycle-toggle.js +264 -0
- package/dist/commands/cycle-toggle.js.map +1 -0
- package/dist/commands/node.d.ts +16 -0
- package/dist/commands/node.d.ts.map +1 -0
- package/dist/commands/node.js +57 -0
- package/dist/commands/node.js.map +1 -0
- package/dist/hooks/core/actions.d.ts +11 -2
- package/dist/hooks/core/actions.d.ts.map +1 -1
- package/dist/hooks/core/actions.js.map +1 -1
- package/dist/hooks/core/verify-gate.d.ts.map +1 -1
- package/dist/hooks/core/verify-gate.js +44 -14
- package/dist/hooks/core/verify-gate.js.map +1 -1
- package/dist/import/claude/transcript-walk.d.ts.map +1 -1
- package/dist/import/claude/transcript-walk.js +10 -2
- package/dist/import/claude/transcript-walk.js.map +1 -1
- package/dist/index.js +9 -6
- package/dist/index.js.map +1 -1
- package/dist/lib/config.d.ts +142 -41
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +251 -82
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/platform-section.d.ts +126 -0
- package/dist/lib/platform-section.d.ts.map +1 -0
- package/dist/lib/platform-section.js +279 -0
- package/dist/lib/platform-section.js.map +1 -0
- package/package.json +1 -1
- package/dist/clients/claude/fragments/command-verify.node.md +0 -33
- package/dist/clients/cursor/fragments/command-verify.node.md +0 -33
- package/dist/commands/backend-toggle.d.ts +0 -56
- package/dist/commands/backend-toggle.d.ts.map +0 -1
- package/dist/commands/backend-toggle.js +0 -199
- package/dist/commands/backend-toggle.js.map +0 -1
- package/dist/commands/disable-backend.d.ts +0 -14
- package/dist/commands/disable-backend.d.ts.map +0 -1
- package/dist/commands/disable-backend.js +0 -38
- package/dist/commands/disable-backend.js.map +0 -1
- package/dist/commands/enable-backend.d.ts +0 -15
- package/dist/commands/enable-backend.d.ts.map +0 -1
- package/dist/commands/enable-backend.js +0 -39
- package/dist/commands/enable-backend.js.map +0 -1
- package/dist/lib/runtime-section.d.ts +0 -118
- package/dist/lib/runtime-section.d.ts.map +0 -1
- package/dist/lib/runtime-section.js +0 -256
- package/dist/lib/runtime-section.js.map +0 -1
package/dist/lib/config.js
CHANGED
|
@@ -7,30 +7,26 @@
|
|
|
7
7
|
* 2. Project: <projectDir>/.ironbee/config.json (committed)
|
|
8
8
|
* 3. Project-local: <projectDir>/.ironbee/config.local.json (gitignored)
|
|
9
9
|
*
|
|
10
|
-
* Each later layer overrides earlier ones (deep merge for nested
|
|
11
|
-
* `backend
|
|
12
|
-
* keys). The local layer is intended for personal / per-machine
|
|
13
|
-
* (debug toggles, machine-specific paths, alternate collector
|
|
14
|
-
* must not be committed — `ironbee install` adds
|
|
15
|
-
* to `.gitignore` automatically.
|
|
16
|
-
*
|
|
17
|
-
* The pre-split layout (top-level `verifyPatterns` / `additionalVerifyPatterns`)
|
|
18
|
-
* is no longer supported. Configs carrying those fields throw at load time —
|
|
19
|
-
* patterns must move under `browser.*` (or the appropriate runtime under
|
|
20
|
-
* `backend.<runtime>.*`). The same legacy-shape rejection applies to the
|
|
21
|
-
* local layer.
|
|
10
|
+
* Each later layer overrides earlier ones (deep merge for nested cycle
|
|
11
|
+
* blocks: `browser`, `node`, `backend`; shallow for primitives and other
|
|
12
|
+
* top-level keys). The local layer is intended for personal / per-machine
|
|
13
|
+
* overrides (debug toggles, machine-specific paths, alternate collector
|
|
14
|
+
* endpoints) and must not be committed — `ironbee install` adds
|
|
15
|
+
* `.ironbee/config.local.json` to `.gitignore` automatically.
|
|
22
16
|
*/
|
|
23
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
-
exports.CONFIG_TARGETS_BY_PRECEDENCE = exports.
|
|
18
|
+
exports.CONFIG_TARGETS_BY_PRECEDENCE = exports.DEFAULT_BACKEND_EVIDENCE_PATHS = exports.DEFAULT_BACKEND_ALWAYS_REQUIRED = exports.DEFAULT_NODE_EVIDENCE_PATHS = exports.DEFAULT_NODE_ALWAYS_REQUIRED = exports.DEFAULT_BROWSER_ALWAYS_REQUIRED = exports.CYCLE_DEFAULT_VERIFY_PATTERNS = exports.DEFAULT_BACKEND_VERIFY_PATTERNS = exports.DEFAULT_NODE_VERIFY_PATTERNS = exports.DEFAULT_BROWSER_VERIFY_PATTERNS = exports.CYCLE_TO_SERVER = exports.CYCLES_ENABLED_BY_DEFAULT = exports.ALL_CYCLES = exports.OPTIONAL_CYCLES = void 0;
|
|
25
19
|
exports.getConfigLayerPaths = getConfigLayerPaths;
|
|
26
20
|
exports.getTargetConfigPath = getTargetConfigPath;
|
|
27
21
|
exports.resolveConfigTargetFromFlags = resolveConfigTargetFromFlags;
|
|
28
22
|
exports.loadConfig = loadConfig;
|
|
29
23
|
exports.getActiveCycles = getActiveCycles;
|
|
30
24
|
exports.requiresVerification = requiresVerification;
|
|
25
|
+
exports.isCycleEnabled = isCycleEnabled;
|
|
31
26
|
exports.getRequiredToolsConfig = getRequiredToolsConfig;
|
|
32
27
|
exports.getMcpServerEntry = getMcpServerEntry;
|
|
33
28
|
exports.getNodeDevToolsMcpEntry = getNodeDevToolsMcpEntry;
|
|
29
|
+
exports.getBackendDevToolsMcpEntry = getBackendDevToolsMcpEntry;
|
|
34
30
|
exports.getMaxRetries = getMaxRetries;
|
|
35
31
|
exports.isCollectorConfigured = isCollectorConfigured;
|
|
36
32
|
exports.isJobQueueEnabled = isJobQueueEnabled;
|
|
@@ -48,13 +44,44 @@ const fs_1 = require("fs");
|
|
|
48
44
|
const path_1 = require("path");
|
|
49
45
|
const os_1 = require("os");
|
|
50
46
|
const logger_1 = require("./logger");
|
|
51
|
-
/**
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
47
|
+
/**
|
|
48
|
+
* Optional cycles — those that default to **disabled** (empty `verifyPatterns`)
|
|
49
|
+
* until the operator explicitly opts in via `ironbee <cycle> enable`. The
|
|
50
|
+
* always-on browser cycle is the only default-enabled cycle and is excluded
|
|
51
|
+
* from this list. Order is the canonical sort order used by verify-gate when
|
|
52
|
+
* building per-cycle messages.
|
|
53
|
+
*/
|
|
54
|
+
exports.OPTIONAL_CYCLES = ["node", "backend"];
|
|
55
|
+
/**
|
|
56
|
+
* Every cycle the runtime knows about — browser plus all optional cycles.
|
|
57
|
+
* Used by the platform-section sync (skill / rule / command-verify md files
|
|
58
|
+
* carry one marker block per cycle) and by toggle commands when validating
|
|
59
|
+
* the cycle name. Order matches verify-gate's canonical block ordering
|
|
60
|
+
* (browser first, then OPTIONAL_CYCLES).
|
|
61
|
+
*/
|
|
62
|
+
exports.ALL_CYCLES = ["browser", ...exports.OPTIONAL_CYCLES];
|
|
63
|
+
/**
|
|
64
|
+
* Cycles whose default state is "enabled" (the cycle activates without the
|
|
65
|
+
* operator having to write `verifyPatterns` in config). Currently only the
|
|
66
|
+
* browser cycle ships with built-in default patterns; node and backend cycles
|
|
67
|
+
* default to inert (`[]`) and require `ironbee <cycle> enable`.
|
|
68
|
+
*
|
|
69
|
+
* Used by `getCyclePatterns` runtime fallback (block-absent + default-on
|
|
70
|
+
* → code defaults activate) and by toggle commands. `<cycle> disable` records
|
|
71
|
+
* its intent via the top-level `disabled` list — that takes precedence over
|
|
72
|
+
* the default-on fallback, so a disabled browser stays off even though
|
|
73
|
+
* `CYCLES_ENABLED_BY_DEFAULT` contains it.
|
|
74
|
+
*/
|
|
75
|
+
exports.CYCLES_ENABLED_BY_DEFAULT = new Set(["browser"]);
|
|
76
|
+
/** Map cycle key → MCP server name. Browser is always `browser-devtools`. */
|
|
77
|
+
exports.CYCLE_TO_SERVER = {
|
|
78
|
+
browser: "browser-devtools",
|
|
55
79
|
node: "node-devtools",
|
|
80
|
+
backend: "backend-devtools",
|
|
56
81
|
};
|
|
57
|
-
/** Browser default verify patterns —
|
|
82
|
+
/** Browser default verify patterns — kicks in whenever the browser block is
|
|
83
|
+
* present without an explicit `verifyPatterns`, OR (since browser is
|
|
84
|
+
* default-on) whenever no browser block is present at any layer. */
|
|
58
85
|
exports.DEFAULT_BROWSER_VERIFY_PATTERNS = [
|
|
59
86
|
"*.ts", "*.tsx",
|
|
60
87
|
"*.js", "*.jsx", "*.mjs", "*.cjs",
|
|
@@ -82,6 +109,65 @@ exports.DEFAULT_BROWSER_VERIFY_PATTERNS = [
|
|
|
82
109
|
"*.hbs", "*.ejs", "*.pug", "*.jade",
|
|
83
110
|
"*.astro",
|
|
84
111
|
];
|
|
112
|
+
/**
|
|
113
|
+
* Node-cycle default verify patterns — kicks in when the `node` block is
|
|
114
|
+
* present without an explicit `verifyPatterns`. The node cycle is opt-in so
|
|
115
|
+
* the block must be present (a fully-absent block keeps the cycle disabled).
|
|
116
|
+
*
|
|
117
|
+
* Heuristic-tuned for typical Node.js backends — server entry points, API
|
|
118
|
+
* route handlers (Next.js / Remix / SvelteKit conventions), and the routes/
|
|
119
|
+
* folder.
|
|
120
|
+
*/
|
|
121
|
+
exports.DEFAULT_NODE_VERIFY_PATTERNS = [
|
|
122
|
+
"server/**/*.{ts,js,mjs,cjs}",
|
|
123
|
+
"src/server/**/*.{ts,js,mjs,cjs}",
|
|
124
|
+
"backend/**/*.{ts,js,mjs,cjs}",
|
|
125
|
+
"api/**/*.{ts,js,mjs,cjs}",
|
|
126
|
+
"src/api/**/*.{ts,js,mjs,cjs}",
|
|
127
|
+
"pages/api/**/*.{ts,js,mjs,cjs}",
|
|
128
|
+
"app/api/**/*.{ts,js,mjs,cjs}",
|
|
129
|
+
"routes/**/*.{ts,js,mjs,cjs}",
|
|
130
|
+
"**/server.{ts,js,mjs,cjs}",
|
|
131
|
+
];
|
|
132
|
+
/**
|
|
133
|
+
* Backend-cycle default verify patterns — kicks in when the `backend` block
|
|
134
|
+
* is present without an explicit `verifyPatterns`. Multi-language coverage —
|
|
135
|
+
* the cycle drives wire protocols, not language-specific tooling, so the
|
|
136
|
+
* heuristic spans every common server-side language.
|
|
137
|
+
*/
|
|
138
|
+
exports.DEFAULT_BACKEND_VERIFY_PATTERNS = [
|
|
139
|
+
"server/**/*.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
140
|
+
"src/server/**/*.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
141
|
+
"backend/**/*.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
142
|
+
"api/**/*.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
143
|
+
"src/api/**/*.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
144
|
+
"pages/api/**/*.{ts,js,mjs,cjs}",
|
|
145
|
+
"app/api/**/*.{ts,js,mjs,cjs}",
|
|
146
|
+
"routes/**/*.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
147
|
+
"controllers/**/*.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
148
|
+
"handlers/**/*.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
149
|
+
"services/**/*.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
150
|
+
"**/server.{ts,js,mjs,cjs,py,go,java,rb,cs,rs,kt,scala,ex,exs,php,clj}",
|
|
151
|
+
"**/main.{go,py,java,rb,kt,scala}",
|
|
152
|
+
];
|
|
153
|
+
/**
|
|
154
|
+
* Per-cycle default `verifyPatterns` lookup. Single source of truth used by:
|
|
155
|
+
*
|
|
156
|
+
* - `getCyclePatterns` runtime fallback when the cycle block is present
|
|
157
|
+
* without an explicit `verifyPatterns`.
|
|
158
|
+
* - For browser only: also kicks in when the cycle block is fully absent
|
|
159
|
+
* (browser is the default-on cycle — `CYCLES_ENABLED_BY_DEFAULT`).
|
|
160
|
+
*
|
|
161
|
+
* `<cycle> enable` does NOT materialize these into config.json; the cycle
|
|
162
|
+
* block is written empty (`{}`) and these defaults flow in at runtime.
|
|
163
|
+
* Keeps `config.json` minimal and lets defaults track the CLI version
|
|
164
|
+
* automatically.
|
|
165
|
+
*/
|
|
166
|
+
exports.CYCLE_DEFAULT_VERIFY_PATTERNS = {
|
|
167
|
+
browser: exports.DEFAULT_BROWSER_VERIFY_PATTERNS,
|
|
168
|
+
node: exports.DEFAULT_NODE_VERIFY_PATTERNS,
|
|
169
|
+
backend: exports.DEFAULT_BACKEND_VERIFY_PATTERNS,
|
|
170
|
+
};
|
|
85
171
|
/** Browser-cycle required tools — strict all-of, no alternative paths. */
|
|
86
172
|
exports.DEFAULT_BROWSER_ALWAYS_REQUIRED = [
|
|
87
173
|
"bdt_navigation_go-to",
|
|
@@ -90,10 +176,10 @@ exports.DEFAULT_BROWSER_ALWAYS_REQUIRED = [
|
|
|
90
176
|
"bdt_o11y_get-console-messages",
|
|
91
177
|
];
|
|
92
178
|
/** Node-cycle required tools — connect always; then probe path or log path. */
|
|
93
|
-
exports.
|
|
179
|
+
exports.DEFAULT_NODE_ALWAYS_REQUIRED = [
|
|
94
180
|
"ndt_debug_connect",
|
|
95
181
|
];
|
|
96
|
-
exports.
|
|
182
|
+
exports.DEFAULT_NODE_EVIDENCE_PATHS = [
|
|
97
183
|
{
|
|
98
184
|
name: "probe",
|
|
99
185
|
allOf: [
|
|
@@ -112,6 +198,29 @@ exports.DEFAULT_BACKEND_NODE_EVIDENCE_PATHS = [
|
|
|
112
198
|
allOf: ["ndt_debug_get-logs"],
|
|
113
199
|
},
|
|
114
200
|
];
|
|
201
|
+
/**
|
|
202
|
+
* Backend-cycle required tools — no single tool is mandatory (different
|
|
203
|
+
* tasks need different protocols), so `alwaysRequired` is empty and the
|
|
204
|
+
* gate is satisfied by any one protocol-call evidence path. The replay
|
|
205
|
+
* tool counts because it issues a real protocol call against the target.
|
|
206
|
+
*/
|
|
207
|
+
exports.DEFAULT_BACKEND_ALWAYS_REQUIRED = [];
|
|
208
|
+
exports.DEFAULT_BACKEND_EVIDENCE_PATHS = [
|
|
209
|
+
{
|
|
210
|
+
name: "protocol-call",
|
|
211
|
+
allOf: [
|
|
212
|
+
{
|
|
213
|
+
anyOf: [
|
|
214
|
+
"bedt_request_http",
|
|
215
|
+
"bedt_request_grpc",
|
|
216
|
+
"bedt_request_graphql",
|
|
217
|
+
"bedt_request_websocket-open",
|
|
218
|
+
"bedt_request_replay",
|
|
219
|
+
],
|
|
220
|
+
},
|
|
221
|
+
],
|
|
222
|
+
},
|
|
223
|
+
];
|
|
115
224
|
const DEFAULT_MAX_RETRIES = 3;
|
|
116
225
|
function loadJsonFile(filePath) {
|
|
117
226
|
if (!(0, fs_1.existsSync)(filePath)) {
|
|
@@ -125,21 +234,6 @@ function loadJsonFile(filePath) {
|
|
|
125
234
|
return {};
|
|
126
235
|
}
|
|
127
236
|
}
|
|
128
|
-
/** Detect pre-split flat config. Loud failure per design D6. */
|
|
129
|
-
function assertNoLegacyShape(config, sourcePath) {
|
|
130
|
-
const legacy = [];
|
|
131
|
-
if (Object.prototype.hasOwnProperty.call(config, "verifyPatterns")) {
|
|
132
|
-
legacy.push("'verifyPatterns'");
|
|
133
|
-
}
|
|
134
|
-
if (Object.prototype.hasOwnProperty.call(config, "additionalVerifyPatterns")) {
|
|
135
|
-
legacy.push("'additionalVerifyPatterns'");
|
|
136
|
-
}
|
|
137
|
-
if (legacy.length === 0) {
|
|
138
|
-
return;
|
|
139
|
-
}
|
|
140
|
-
throw new Error(`Legacy IronBee config detected in ${sourcePath}: ${legacy.join(", ")} at the top level is no longer supported. ` +
|
|
141
|
-
`Move them under 'browser.*' (or the appropriate runtime under 'backend.<runtime>.*').`);
|
|
142
|
-
}
|
|
143
237
|
function assertVerificationShape(config, sourcePath) {
|
|
144
238
|
if (!Object.prototype.hasOwnProperty.call(config, "verification")) {
|
|
145
239
|
return;
|
|
@@ -155,37 +249,24 @@ function assertVerificationShape(config, sourcePath) {
|
|
|
155
249
|
`Got ${typeof block.enable}.`);
|
|
156
250
|
}
|
|
157
251
|
}
|
|
158
|
-
/** Deep merge for
|
|
252
|
+
/** Deep merge for a single cycle block (browser / node / backend). */
|
|
159
253
|
function mergeCycleConfig(base, override) {
|
|
160
254
|
if (base === undefined && override === undefined) {
|
|
161
255
|
return undefined;
|
|
162
256
|
}
|
|
163
257
|
return { ...(base ?? {}), ...(override ?? {}) };
|
|
164
258
|
}
|
|
165
|
-
function mergeBackend(base, override) {
|
|
166
|
-
if (base === undefined && override === undefined) {
|
|
167
|
-
return undefined;
|
|
168
|
-
}
|
|
169
|
-
const merged = {};
|
|
170
|
-
const keys = new Set([
|
|
171
|
-
...Object.keys(base ?? {}),
|
|
172
|
-
...Object.keys(override ?? {}),
|
|
173
|
-
]);
|
|
174
|
-
for (const key of keys) {
|
|
175
|
-
merged[key] = mergeCycleConfig(base?.[key], override?.[key]);
|
|
176
|
-
}
|
|
177
|
-
return merged;
|
|
178
|
-
}
|
|
179
259
|
/**
|
|
180
260
|
* Merge two `IronBeeConfig` layers — `override` wins. Top-level keys are
|
|
181
|
-
* shallow-merged; the `browser`
|
|
261
|
+
* shallow-merged; the cycle blocks (`browser`, `node`, `backend`) deep-merge
|
|
182
262
|
* so a project override of `browser.verifyPatterns` doesn't wipe a global
|
|
183
263
|
* `browser.evidencePaths` (and vice-versa for the local layer).
|
|
184
264
|
*/
|
|
185
265
|
function mergeConfigLayers(base, override) {
|
|
186
266
|
const merged = { ...base, ...override };
|
|
187
267
|
merged.browser = mergeCycleConfig(base.browser, override.browser);
|
|
188
|
-
merged.
|
|
268
|
+
merged.node = mergeCycleConfig(base.node, override.node);
|
|
269
|
+
merged.backend = mergeCycleConfig(base.backend, override.backend);
|
|
189
270
|
return merged;
|
|
190
271
|
}
|
|
191
272
|
/** Returns the on-disk paths of all three config layers without reading them. */
|
|
@@ -225,8 +306,8 @@ function getTargetConfigPath(target, projectDir) {
|
|
|
225
306
|
* Resolves a `ConfigTarget` from CLI flag booleans, enforcing mutual
|
|
226
307
|
* exclusion. Used by every write-side command that exposes
|
|
227
308
|
* `-g / --global` and `--local` flags (`config set`, `config unset`,
|
|
228
|
-
* `enable-verification`, `disable-verification`, `enable
|
|
229
|
-
* `disable
|
|
309
|
+
* `enable-verification`, `disable-verification`, `backend enable`,
|
|
310
|
+
* `backend disable`) so the flag-resolution rules stay identical.
|
|
230
311
|
*
|
|
231
312
|
* Returns `"project"` when neither flag is set (the default for
|
|
232
313
|
* project-scoped commands). Throws on the impossible `--global --local`
|
|
@@ -248,7 +329,6 @@ function resolveConfigTargetFromFlags(opts) {
|
|
|
248
329
|
function loadAndValidateLayer(path) {
|
|
249
330
|
const raw = loadJsonFile(path);
|
|
250
331
|
if ((0, fs_1.existsSync)(path)) {
|
|
251
|
-
assertNoLegacyShape(raw, path);
|
|
252
332
|
assertVerificationShape(raw, path);
|
|
253
333
|
}
|
|
254
334
|
return raw;
|
|
@@ -296,26 +376,76 @@ function matchesAny(filePath, patterns) {
|
|
|
296
376
|
}
|
|
297
377
|
return false;
|
|
298
378
|
}
|
|
299
|
-
/** Returns the
|
|
300
|
-
function
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
379
|
+
/** Returns the per-cycle config block. Always-on browser, opt-in node / backend. */
|
|
380
|
+
function getCycleBlock(config, cycle) {
|
|
381
|
+
if (cycle === "browser") {
|
|
382
|
+
return config.browser;
|
|
383
|
+
}
|
|
384
|
+
if (cycle === "node") {
|
|
385
|
+
return config.node;
|
|
386
|
+
}
|
|
387
|
+
if (cycle === "backend") {
|
|
388
|
+
return config.backend;
|
|
389
|
+
}
|
|
390
|
+
return undefined;
|
|
305
391
|
}
|
|
306
|
-
/**
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
392
|
+
/**
|
|
393
|
+
* Returns the effective pattern set for a cycle. Resolution order:
|
|
394
|
+
*
|
|
395
|
+
* 1. **`block.enable === false`** → cycle-specific disable signal written
|
|
396
|
+
* by `<cycle> disable`. Mirrors `recording.enable` / `jobQueue.enable`
|
|
397
|
+
* / `verification.enable`.
|
|
398
|
+
* 2. **Block absent** → for default-on cycles (browser), the code defaults
|
|
399
|
+
* kick in. For default-off cycles (node, backend), no patterns.
|
|
400
|
+
* 3. **`verifyPatterns: []`** → hard kill (legacy disable marker — still
|
|
401
|
+
* respected for older configs; new disables write `enable: false`).
|
|
402
|
+
* 4. **Block present, `verifyPatterns` undefined** → enabled with code
|
|
403
|
+
* defaults (`CYCLE_DEFAULT_VERIFY_PATTERNS[cycle]`). Post-`<cycle> enable`
|
|
404
|
+
* shape — minimal config, defaults track CLI version.
|
|
405
|
+
* 5. **`verifyPatterns: [...non-empty]`** → enabled with custom patterns.
|
|
406
|
+
*
|
|
407
|
+
* `additionalVerifyPatterns` is appended to whatever base resolves at step
|
|
408
|
+
* 4/5 — EXCEPT when the cycle is disabled via step 1 or 3.
|
|
409
|
+
*
|
|
410
|
+
* **Note:** does NOT check the master `verification.enable` switch. That
|
|
411
|
+
* happens at the verification-level (install-time gating + the higher-level
|
|
412
|
+
* {@link isCycleEnabled} helper). This function returns the cycle's pattern
|
|
413
|
+
* shape independent of master state — useful for code paths that want
|
|
414
|
+
* pattern info even when enforcement is off.
|
|
415
|
+
*/
|
|
416
|
+
function getCyclePatterns(config, cycle) {
|
|
417
|
+
const block = getCycleBlock(config, cycle);
|
|
418
|
+
// Explicit per-cycle disable signal.
|
|
419
|
+
if (block !== undefined && block.enable === false) {
|
|
420
|
+
return [];
|
|
421
|
+
}
|
|
422
|
+
const cycleDefaults = exports.CYCLE_DEFAULT_VERIFY_PATTERNS[cycle] ?? [];
|
|
423
|
+
if (block === undefined) {
|
|
424
|
+
// Block absent: only default-on cycles activate via code defaults.
|
|
425
|
+
if (exports.CYCLES_ENABLED_BY_DEFAULT.has(cycle)) {
|
|
426
|
+
return [...cycleDefaults];
|
|
427
|
+
}
|
|
428
|
+
return [];
|
|
429
|
+
}
|
|
430
|
+
// Legacy hard kill: `verifyPatterns: []` still fully disables. Newer
|
|
431
|
+
// configs use `enable: false` (above) but pre-existing configs may
|
|
432
|
+
// carry this older marker — keep honoring it.
|
|
433
|
+
if (Array.isArray(block.verifyPatterns) && block.verifyPatterns.length === 0) {
|
|
434
|
+
return [];
|
|
435
|
+
}
|
|
436
|
+
// Block present, enabled: `verifyPatterns` wins when set; otherwise
|
|
437
|
+
// fall back to code defaults (post-`<cycle> enable` shape).
|
|
438
|
+
const base = block.verifyPatterns ?? cycleDefaults;
|
|
439
|
+
const additional = block.additionalVerifyPatterns ?? [];
|
|
311
440
|
return [...base, ...additional];
|
|
312
441
|
}
|
|
313
442
|
/**
|
|
314
443
|
* Returns the names of cycles whose pattern set matches `filePath`.
|
|
315
444
|
* Used by verify-gate to determine which cycles are active for a Stop hook.
|
|
316
445
|
*
|
|
317
|
-
* Order: browser first, then each
|
|
318
|
-
* applies globally — a file matched there
|
|
446
|
+
* Order: browser first, then each optional cycle in {@link OPTIONAL_CYCLES}
|
|
447
|
+
* order. `ignoredVerifyPatterns` applies globally — a file matched there
|
|
448
|
+
* activates no cycles.
|
|
319
449
|
*/
|
|
320
450
|
function getActiveCycles(filePath, config) {
|
|
321
451
|
const ignored = config.ignoredVerifyPatterns ?? [];
|
|
@@ -323,17 +453,13 @@ function getActiveCycles(filePath, config) {
|
|
|
323
453
|
return [];
|
|
324
454
|
}
|
|
325
455
|
const active = [];
|
|
326
|
-
if (matchesAny(filePath,
|
|
456
|
+
if (matchesAny(filePath, getCyclePatterns(config, "browser"))) {
|
|
327
457
|
active.push("browser");
|
|
328
458
|
}
|
|
329
|
-
for (const
|
|
330
|
-
const
|
|
331
|
-
if (runtime === undefined) {
|
|
332
|
-
continue;
|
|
333
|
-
}
|
|
334
|
-
const patterns = getBackendRuntimePatterns(config, runtime);
|
|
459
|
+
for (const cycle of exports.OPTIONAL_CYCLES) {
|
|
460
|
+
const patterns = getCyclePatterns(config, cycle);
|
|
335
461
|
if (patterns.length > 0 && matchesAny(filePath, patterns)) {
|
|
336
|
-
active.push(
|
|
462
|
+
active.push(cycle);
|
|
337
463
|
}
|
|
338
464
|
}
|
|
339
465
|
return active;
|
|
@@ -346,6 +472,34 @@ function getActiveCycles(filePath, config) {
|
|
|
346
472
|
function requiresVerification(filePath, config) {
|
|
347
473
|
return getActiveCycles(filePath, config).length > 0;
|
|
348
474
|
}
|
|
475
|
+
/**
|
|
476
|
+
* Returns true if `cycle` is currently enabled for verification in `config`
|
|
477
|
+
* (effective merged shape).
|
|
478
|
+
*
|
|
479
|
+
* Two conditions must BOTH hold:
|
|
480
|
+
* 1. The master switch `verification.enable` is on (or absent — defaults
|
|
481
|
+
* to true). When `verification.enable: false`, every cycle is off
|
|
482
|
+
* regardless of its own block — per-cycle settings never override the
|
|
483
|
+
* master switch.
|
|
484
|
+
* 2. The cycle's own resolution per {@link getCyclePatterns} yields
|
|
485
|
+
* non-empty patterns:
|
|
486
|
+
* - `block.enable === false` → disabled (canonical signal).
|
|
487
|
+
* - Block absent + default-on (browser) → enabled (code defaults).
|
|
488
|
+
* - Block absent + default-off (node, backend) → disabled.
|
|
489
|
+
* - `verifyPatterns: []` (legacy) → disabled.
|
|
490
|
+
* - Block present with `verifyPatterns` undefined → enabled (defaults).
|
|
491
|
+
* - Block present with non-empty `verifyPatterns` → enabled (custom).
|
|
492
|
+
*
|
|
493
|
+
* Used by `platform-section.syncPlatformSectionsToConfig` to decide whether to
|
|
494
|
+
* splice the cycle's fragment or the placeholder into installed md files,
|
|
495
|
+
* and by client `install` paths to gate MCP server entries + permissions.
|
|
496
|
+
*/
|
|
497
|
+
function isCycleEnabled(config, cycle) {
|
|
498
|
+
if (!getVerificationEnabled(config)) {
|
|
499
|
+
return false;
|
|
500
|
+
}
|
|
501
|
+
return getCyclePatterns(config, cycle).length > 0;
|
|
502
|
+
}
|
|
349
503
|
/**
|
|
350
504
|
* Per-cycle resolved required-tools spec. Falls back to defaults at this layer
|
|
351
505
|
* so consumers always get a complete `{ alwaysRequired, evidencePaths }` shape.
|
|
@@ -361,13 +515,16 @@ function getRequiredToolsConfig(config, cycle) {
|
|
|
361
515
|
evidencePaths = config.browser?.evidencePaths ?? [];
|
|
362
516
|
}
|
|
363
517
|
else if (cycle === "node") {
|
|
364
|
-
alwaysRequired = config.
|
|
365
|
-
evidencePaths = config.
|
|
518
|
+
alwaysRequired = config.node?.alwaysRequired ?? exports.DEFAULT_NODE_ALWAYS_REQUIRED;
|
|
519
|
+
evidencePaths = config.node?.evidencePaths ?? exports.DEFAULT_NODE_EVIDENCE_PATHS;
|
|
520
|
+
}
|
|
521
|
+
else if (cycle === "backend") {
|
|
522
|
+
alwaysRequired = config.backend?.alwaysRequired ?? exports.DEFAULT_BACKEND_ALWAYS_REQUIRED;
|
|
523
|
+
evidencePaths = config.backend?.evidencePaths ?? exports.DEFAULT_BACKEND_EVIDENCE_PATHS;
|
|
366
524
|
}
|
|
367
525
|
else {
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
evidencePaths = block?.evidencePaths ?? [];
|
|
526
|
+
alwaysRequired = [];
|
|
527
|
+
evidencePaths = [];
|
|
371
528
|
}
|
|
372
529
|
if (alwaysRequired.length === 0 && evidencePaths.length === 0) {
|
|
373
530
|
throw new Error(`Invalid required-tools config for cycle '${cycle}': both 'alwaysRequired' and 'evidencePaths' are empty. ` +
|
|
@@ -386,10 +543,16 @@ const NODE_IRONBEE_ENV = {
|
|
|
386
543
|
TOOL_NAME_PREFIX: "ndt_",
|
|
387
544
|
TOOL_INPUT_METADATA_ENABLE: "true",
|
|
388
545
|
};
|
|
546
|
+
const BACKEND_IRONBEE_ENV = {
|
|
547
|
+
PLATFORM: "backend",
|
|
548
|
+
TOOL_NAME_PREFIX: "bedt_",
|
|
549
|
+
TOOL_INPUT_METADATA_ENABLE: "true",
|
|
550
|
+
};
|
|
389
551
|
const BROWSER_DEFAULT_MCP_ENV = {
|
|
390
552
|
BROWSER_DEVTOOLS_INSTALL_CHROMIUM: "true",
|
|
391
553
|
};
|
|
392
554
|
const NODE_DEFAULT_MCP_ENV = {};
|
|
555
|
+
const BACKEND_DEFAULT_MCP_ENV = {};
|
|
393
556
|
/**
|
|
394
557
|
* Auto-derive OTEL exporter env for the devtools MCP server when the
|
|
395
558
|
* IronBee Collector is configured + enabled. Returns `{}` when the
|
|
@@ -404,7 +567,8 @@ const NODE_DEFAULT_MCP_ENV = {};
|
|
|
404
567
|
* by setting `OTEL_ENABLE: "false"` in their override.
|
|
405
568
|
*
|
|
406
569
|
* `runtime` toggles browser-only vars (USER_INTERACTION_EVENTS,
|
|
407
|
-
* BROWSER_HEADLESS_ENABLE) — node-devtools
|
|
570
|
+
* BROWSER_HEADLESS_ENABLE) — node-devtools and backend-devtools don't
|
|
571
|
+
* honor those.
|
|
408
572
|
*/
|
|
409
573
|
function buildOtelEnv(config, runtime) {
|
|
410
574
|
if (!isCollectorConfigured(config)) {
|
|
@@ -493,6 +657,11 @@ function getNodeDevToolsMcpEntry(projectDir) {
|
|
|
493
657
|
const config = loadConfig(projectDir);
|
|
494
658
|
return buildMcpEntry(config, "nodeDevTools", NODE_IRONBEE_ENV, NODE_DEFAULT_MCP_ENV, "node");
|
|
495
659
|
}
|
|
660
|
+
/** Returns the MCP server entry for `backend-devtools` (PLATFORM=backend, bedt_). */
|
|
661
|
+
function getBackendDevToolsMcpEntry(projectDir) {
|
|
662
|
+
const config = loadConfig(projectDir);
|
|
663
|
+
return buildMcpEntry(config, "backendDevTools", BACKEND_IRONBEE_ENV, BACKEND_DEFAULT_MCP_ENV, "backend");
|
|
664
|
+
}
|
|
496
665
|
function getMaxRetries(config) {
|
|
497
666
|
return (typeof config.maxRetries === "number" && config.maxRetries > 0)
|
|
498
667
|
? config.maxRetries
|
package/dist/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|