@ironbee-ai/cli 0.6.1 → 0.7.0
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 +167 -39
- package/dist/analysis/code-changes.js +3 -3
- package/dist/analysis/code-changes.js.map +1 -1
- package/dist/analysis/cross-session.js.map +1 -1
- package/dist/analysis/fix-effectiveness.js.map +1 -1
- package/dist/analysis/time-analysis.js.map +1 -1
- package/dist/analysis/verdict-details.js.map +1 -1
- package/dist/analysis/verification-quality.js.map +1 -1
- package/dist/analytics/classifier.d.ts +99 -0
- package/dist/analytics/classifier.d.ts.map +1 -0
- package/dist/analytics/classifier.js +380 -0
- package/dist/analytics/classifier.js.map +1 -0
- package/dist/analytics/emit.d.ts +67 -0
- package/dist/analytics/emit.d.ts.map +1 -0
- package/dist/analytics/emit.js +901 -0
- package/dist/analytics/emit.js.map +1 -0
- package/dist/analytics/errors.d.ts +33 -0
- package/dist/analytics/errors.d.ts.map +1 -0
- package/dist/analytics/errors.js +93 -0
- package/dist/analytics/errors.js.map +1 -0
- package/dist/analytics/hook-trigger.d.ts +39 -0
- package/dist/analytics/hook-trigger.d.ts.map +1 -0
- package/dist/analytics/hook-trigger.js +127 -0
- package/dist/analytics/hook-trigger.js.map +1 -0
- package/dist/analytics/log.d.ts +44 -0
- package/dist/analytics/log.d.ts.map +1 -0
- package/dist/analytics/log.js +158 -0
- package/dist/analytics/log.js.map +1 -0
- package/dist/analytics/merge.d.ts +40 -0
- package/dist/analytics/merge.d.ts.map +1 -0
- package/dist/analytics/merge.js +527 -0
- package/dist/analytics/merge.js.map +1 -0
- package/dist/analytics/pricing.d.ts +149 -0
- package/dist/analytics/pricing.d.ts.map +1 -0
- package/dist/analytics/pricing.js +179 -0
- package/dist/analytics/pricing.js.map +1 -0
- package/dist/analytics/projection.d.ts +356 -0
- package/dist/analytics/projection.d.ts.map +1 -0
- package/dist/analytics/projection.js +2281 -0
- package/dist/analytics/projection.js.map +1 -0
- package/dist/analytics/spawn.d.ts +28 -0
- package/dist/analytics/spawn.d.ts.map +1 -0
- package/dist/analytics/spawn.js +57 -0
- package/dist/analytics/spawn.js.map +1 -0
- package/dist/analytics/state.d.ts +58 -0
- package/dist/analytics/state.d.ts.map +1 -0
- package/dist/analytics/state.js +329 -0
- package/dist/analytics/state.js.map +1 -0
- package/dist/analytics/transcript.d.ts +150 -0
- package/dist/analytics/transcript.d.ts.map +1 -0
- package/dist/analytics/transcript.js +276 -0
- package/dist/analytics/transcript.js.map +1 -0
- package/dist/analytics/types.d.ts +875 -0
- package/dist/analytics/types.d.ts.map +1 -0
- package/dist/analytics/types.js +31 -0
- package/dist/analytics/types.js.map +1 -0
- package/dist/clients/base.d.ts +21 -2
- package/dist/clients/base.d.ts.map +1 -1
- package/dist/clients/claude/commands/ironbee-verify.md +15 -7
- package/dist/clients/claude/fragments/command-verify.node.md +33 -0
- package/dist/clients/claude/fragments/rule.node.md +29 -0
- package/dist/clients/claude/fragments/skill.node.md +77 -0
- package/dist/clients/claude/hooks/activity-end.d.ts +13 -0
- package/dist/clients/claude/hooks/activity-end.d.ts.map +1 -0
- package/dist/clients/claude/hooks/activity-end.js +42 -0
- package/dist/clients/claude/hooks/activity-end.js.map +1 -0
- package/dist/clients/claude/hooks/clear-verdict.d.ts +9 -4
- package/dist/clients/claude/hooks/clear-verdict.d.ts.map +1 -1
- package/dist/clients/claude/hooks/clear-verdict.js +50 -12
- package/dist/clients/claude/hooks/clear-verdict.js.map +1 -1
- package/dist/clients/claude/hooks/require-verdict.d.ts +8 -3
- package/dist/clients/claude/hooks/require-verdict.d.ts.map +1 -1
- package/dist/clients/claude/hooks/require-verdict.js +17 -6
- package/dist/clients/claude/hooks/require-verdict.js.map +1 -1
- package/dist/clients/claude/hooks/require-verification.d.ts +7 -4
- package/dist/clients/claude/hooks/require-verification.d.ts.map +1 -1
- package/dist/clients/claude/hooks/require-verification.js +44 -22
- package/dist/clients/claude/hooks/require-verification.js.map +1 -1
- package/dist/clients/claude/hooks/session-end.d.ts.map +1 -1
- package/dist/clients/claude/hooks/session-end.js +17 -2
- package/dist/clients/claude/hooks/session-end.js.map +1 -1
- package/dist/clients/claude/hooks/session-start.d.ts.map +1 -1
- package/dist/clients/claude/hooks/session-start.js +2 -1
- package/dist/clients/claude/hooks/session-start.js.map +1 -1
- package/dist/clients/claude/hooks/track-action-monitor.d.ts +27 -0
- package/dist/clients/claude/hooks/track-action-monitor.d.ts.map +1 -0
- package/dist/clients/claude/hooks/track-action-monitor.js +126 -0
- package/dist/clients/claude/hooks/track-action-monitor.js.map +1 -0
- package/dist/clients/claude/hooks/track-action.d.ts.map +1 -1
- package/dist/clients/claude/hooks/track-action.js +29 -20
- package/dist/clients/claude/hooks/track-action.js.map +1 -1
- package/dist/clients/claude/hooks/verify-gate.d.ts.map +1 -1
- package/dist/clients/claude/hooks/verify-gate.js +18 -1
- package/dist/clients/claude/hooks/verify-gate.js.map +1 -1
- package/dist/clients/claude/index.d.ts +4 -1
- package/dist/clients/claude/index.d.ts.map +1 -1
- package/dist/clients/claude/index.js +185 -94
- package/dist/clients/claude/index.js.map +1 -1
- package/dist/clients/claude/rules/ironbee-verification.md +41 -33
- package/dist/clients/claude/skills/ironbee-verification.md +93 -76
- package/dist/clients/cursor/commands/ironbee-verify/SKILL.md +18 -10
- package/dist/clients/cursor/fragments/command-verify.node.md +33 -0
- package/dist/clients/cursor/fragments/rule.node.md +29 -0
- package/dist/clients/cursor/fragments/skill.node.md +77 -0
- package/dist/clients/cursor/hooks/activity-end.d.ts +14 -0
- package/dist/clients/cursor/hooks/activity-end.d.ts.map +1 -0
- package/dist/clients/cursor/hooks/activity-end.js +45 -0
- package/dist/clients/cursor/hooks/activity-end.js.map +1 -0
- package/dist/clients/cursor/hooks/clear-verdict.d.ts +13 -4
- package/dist/clients/cursor/hooks/clear-verdict.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/clear-verdict.js +59 -14
- package/dist/clients/cursor/hooks/clear-verdict.js.map +1 -1
- package/dist/clients/cursor/hooks/require-verdict.d.ts +8 -3
- package/dist/clients/cursor/hooks/require-verdict.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/require-verdict.js +17 -6
- package/dist/clients/cursor/hooks/require-verdict.js.map +1 -1
- package/dist/clients/cursor/hooks/require-verification.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/require-verification.js +42 -16
- package/dist/clients/cursor/hooks/require-verification.js.map +1 -1
- package/dist/clients/cursor/hooks/session-end.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/session-end.js +18 -2
- package/dist/clients/cursor/hooks/session-end.js.map +1 -1
- package/dist/clients/cursor/hooks/session-start.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/session-start.js +2 -1
- package/dist/clients/cursor/hooks/session-start.js.map +1 -1
- package/dist/clients/cursor/hooks/track-action-monitor.d.ts +27 -0
- package/dist/clients/cursor/hooks/track-action-monitor.d.ts.map +1 -0
- package/dist/clients/cursor/hooks/track-action-monitor.js +133 -0
- package/dist/clients/cursor/hooks/track-action-monitor.js.map +1 -0
- package/dist/clients/cursor/hooks/track-action.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/track-action.js +51 -23
- package/dist/clients/cursor/hooks/track-action.js.map +1 -1
- package/dist/clients/cursor/hooks/verify-gate.d.ts.map +1 -1
- package/dist/clients/cursor/hooks/verify-gate.js +14 -1
- package/dist/clients/cursor/hooks/verify-gate.js.map +1 -1
- package/dist/clients/cursor/index.d.ts +4 -1
- package/dist/clients/cursor/index.d.ts.map +1 -1
- package/dist/clients/cursor/index.js +131 -65
- package/dist/clients/cursor/index.js.map +1 -1
- package/dist/clients/cursor/rules/ironbee-verification.mdc +37 -29
- package/dist/clients/cursor/skills/ironbee-verification.md +93 -76
- package/dist/clients/registry.d.ts +14 -0
- package/dist/clients/registry.d.ts.map +1 -1
- package/dist/clients/registry.js +34 -0
- package/dist/clients/registry.js.map +1 -1
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +40 -0
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/backend-toggle.d.ts +45 -0
- package/dist/commands/backend-toggle.d.ts.map +1 -0
- package/dist/commands/backend-toggle.js +192 -0
- package/dist/commands/backend-toggle.js.map +1 -0
- package/dist/commands/disable-backend.d.ts +14 -0
- package/dist/commands/disable-backend.d.ts.map +1 -0
- package/dist/commands/disable-backend.js +34 -0
- package/dist/commands/disable-backend.js.map +1 -0
- package/dist/commands/disable-verification.d.ts +16 -0
- package/dist/commands/disable-verification.d.ts.map +1 -0
- package/dist/commands/disable-verification.js +36 -0
- package/dist/commands/disable-verification.js.map +1 -0
- package/dist/commands/enable-backend.d.ts +15 -0
- package/dist/commands/enable-backend.d.ts.map +1 -0
- package/dist/commands/enable-backend.js +35 -0
- package/dist/commands/enable-backend.js.map +1 -0
- package/dist/commands/enable-verification.d.ts +14 -0
- package/dist/commands/enable-verification.d.ts.map +1 -0
- package/dist/commands/enable-verification.js +34 -0
- package/dist/commands/enable-verification.js.map +1 -0
- package/dist/commands/hook.d.ts.map +1 -1
- package/dist/commands/hook.js +60 -0
- package/dist/commands/hook.js.map +1 -1
- package/dist/commands/import.d.ts +39 -0
- package/dist/commands/import.d.ts.map +1 -0
- package/dist/commands/import.js +369 -0
- package/dist/commands/import.js.map +1 -0
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +15 -20
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/process-analytics.d.ts +18 -0
- package/dist/commands/process-analytics.d.ts.map +1 -0
- package/dist/commands/process-analytics.js +57 -0
- package/dist/commands/process-analytics.js.map +1 -0
- package/dist/commands/queue.d.ts +2 -3
- package/dist/commands/queue.d.ts.map +1 -1
- package/dist/commands/queue.js +2 -3
- package/dist/commands/queue.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +29 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/verification-toggle.d.ts +47 -0
- package/dist/commands/verification-toggle.d.ts.map +1 -0
- package/dist/commands/verification-toggle.js +113 -0
- package/dist/commands/verification-toggle.js.map +1 -0
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +28 -0
- package/dist/commands/verify.js.map +1 -1
- package/dist/hooks/core/actions.d.ts +77 -70
- package/dist/hooks/core/actions.d.ts.map +1 -1
- package/dist/hooks/core/actions.js +45 -30
- package/dist/hooks/core/actions.js.map +1 -1
- package/dist/hooks/core/activity-end.d.ts +20 -0
- package/dist/hooks/core/activity-end.d.ts.map +1 -0
- package/dist/hooks/core/activity-end.js +23 -0
- package/dist/hooks/core/activity-end.js.map +1 -0
- package/dist/hooks/core/file-diff.d.ts +19 -0
- package/dist/hooks/core/file-diff.d.ts.map +1 -0
- package/dist/hooks/core/file-diff.js +39 -0
- package/dist/hooks/core/file-diff.js.map +1 -0
- package/dist/hooks/core/required-tools.d.ts +30 -0
- package/dist/hooks/core/required-tools.d.ts.map +1 -0
- package/dist/hooks/core/required-tools.js +70 -0
- package/dist/hooks/core/required-tools.js.map +1 -0
- package/dist/hooks/core/session-state.d.ts +12 -3
- package/dist/hooks/core/session-state.d.ts.map +1 -1
- package/dist/hooks/core/session-state.js +59 -0
- package/dist/hooks/core/session-state.js.map +1 -1
- package/dist/hooks/core/submit-verdict.d.ts.map +1 -1
- package/dist/hooks/core/submit-verdict.js +16 -12
- package/dist/hooks/core/submit-verdict.js.map +1 -1
- package/dist/hooks/core/tool-use-stash.d.ts +41 -0
- package/dist/hooks/core/tool-use-stash.d.ts.map +1 -0
- package/dist/hooks/core/tool-use-stash.js +82 -0
- package/dist/hooks/core/tool-use-stash.js.map +1 -0
- package/dist/hooks/core/verify-gate.d.ts +17 -3
- package/dist/hooks/core/verify-gate.d.ts.map +1 -1
- package/dist/hooks/core/verify-gate.js +315 -119
- package/dist/hooks/core/verify-gate.js.map +1 -1
- package/dist/import/claude/analytics-runner.d.ts +42 -0
- package/dist/import/claude/analytics-runner.d.ts.map +1 -0
- package/dist/import/claude/analytics-runner.js +213 -0
- package/dist/import/claude/analytics-runner.js.map +1 -0
- package/dist/import/claude/discovery.d.ts +22 -0
- package/dist/import/claude/discovery.d.ts.map +1 -0
- package/dist/import/claude/discovery.js +197 -0
- package/dist/import/claude/discovery.js.map +1 -0
- package/dist/import/claude/encoding.d.ts +50 -0
- package/dist/import/claude/encoding.d.ts.map +1 -0
- package/dist/import/claude/encoding.js +110 -0
- package/dist/import/claude/encoding.js.map +1 -0
- package/dist/import/claude/events/file-change.d.ts +28 -0
- package/dist/import/claude/events/file-change.d.ts.map +1 -0
- package/dist/import/claude/events/file-change.js +112 -0
- package/dist/import/claude/events/file-change.js.map +1 -0
- package/dist/import/claude/events/tool-call.d.ts +61 -0
- package/dist/import/claude/events/tool-call.d.ts.map +1 -0
- package/dist/import/claude/events/tool-call.js +119 -0
- package/dist/import/claude/events/tool-call.js.map +1 -0
- package/dist/import/claude/runner.d.ts +31 -0
- package/dist/import/claude/runner.d.ts.map +1 -0
- package/dist/import/claude/runner.js +280 -0
- package/dist/import/claude/runner.js.map +1 -0
- package/dist/import/claude/summary.d.ts +23 -0
- package/dist/import/claude/summary.d.ts.map +1 -0
- package/dist/import/claude/summary.js +186 -0
- package/dist/import/claude/summary.js.map +1 -0
- package/dist/import/claude/transcript-walk.d.ts +52 -0
- package/dist/import/claude/transcript-walk.d.ts.map +1 -0
- package/dist/import/claude/transcript-walk.js +187 -0
- package/dist/import/claude/transcript-walk.js.map +1 -0
- package/dist/import/concurrent-pool.d.ts +45 -0
- package/dist/import/concurrent-pool.d.ts.map +1 -0
- package/dist/import/concurrent-pool.js +95 -0
- package/dist/import/concurrent-pool.js.map +1 -0
- package/dist/import/emitter.d.ts +29 -0
- package/dist/import/emitter.d.ts.map +1 -0
- package/dist/import/emitter.js +66 -0
- package/dist/import/emitter.js.map +1 -0
- package/dist/import/events/activity.d.ts +23 -0
- package/dist/import/events/activity.d.ts.map +1 -0
- package/dist/import/events/activity.js +45 -0
- package/dist/import/events/activity.js.map +1 -0
- package/dist/import/events/session.d.ts +24 -0
- package/dist/import/events/session.d.ts.map +1 -0
- package/dist/import/events/session.js +47 -0
- package/dist/import/events/session.js.map +1 -0
- package/dist/import/filter.d.ts +47 -0
- package/dist/import/filter.d.ts.map +1 -0
- package/dist/import/filter.js +90 -0
- package/dist/import/filter.js.map +1 -0
- package/dist/import/ids.d.ts +56 -0
- package/dist/import/ids.d.ts.map +1 -0
- package/dist/import/ids.js +87 -0
- package/dist/import/ids.js.map +1 -0
- package/dist/import/index.d.ts +29 -0
- package/dist/import/index.d.ts.map +1 -0
- package/dist/import/index.js +52 -0
- package/dist/import/index.js.map +1 -0
- package/dist/import/marker.d.ts +20 -0
- package/dist/import/marker.d.ts.map +1 -0
- package/dist/import/marker.js +71 -0
- package/dist/import/marker.js.map +1 -0
- package/dist/import/pipeline.d.ts +41 -0
- package/dist/import/pipeline.d.ts.map +1 -0
- package/dist/import/pipeline.js +47 -0
- package/dist/import/pipeline.js.map +1 -0
- package/dist/import/progress.d.ts +20 -0
- package/dist/import/progress.d.ts.map +1 -0
- package/dist/import/progress.js +69 -0
- package/dist/import/progress.js.map +1 -0
- package/dist/import/skip.d.ts +13 -0
- package/dist/import/skip.d.ts.map +1 -0
- package/dist/import/skip.js +24 -0
- package/dist/import/skip.js.map +1 -0
- package/dist/import/types.d.ts +125 -0
- package/dist/import/types.d.ts.map +1 -0
- package/dist/import/types.js +28 -0
- package/dist/import/types.js.map +1 -0
- package/dist/index.js +21 -2
- package/dist/index.js.map +1 -1
- package/dist/lib/collector.d.ts +29 -3
- package/dist/lib/collector.d.ts.map +1 -1
- package/dist/lib/collector.js +118 -8
- package/dist/lib/collector.js.map +1 -1
- package/dist/lib/config.d.ts +240 -83
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +482 -89
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/event.d.ts +72 -0
- package/dist/lib/event.d.ts.map +1 -0
- package/dist/lib/event.js +42 -0
- package/dist/lib/event.js.map +1 -0
- package/dist/lib/gitignore.d.ts +21 -0
- package/dist/lib/gitignore.d.ts.map +1 -0
- package/dist/lib/gitignore.js +54 -0
- package/dist/lib/gitignore.js.map +1 -0
- package/dist/lib/runtime-section.d.ts +118 -0
- package/dist/lib/runtime-section.d.ts.map +1 -0
- package/dist/lib/runtime-section.js +256 -0
- package/dist/lib/runtime-section.js.map +1 -0
- package/dist/lib/telemetry.d.ts +1 -1
- package/dist/lib/telemetry.d.ts.map +1 -1
- package/dist/lib/telemetry.js +4 -1
- package/dist/lib/telemetry.js.map +1 -1
- package/dist/queue/dead-letter.d.ts +5 -1
- package/dist/queue/dead-letter.d.ts.map +1 -1
- package/dist/queue/dead-letter.js +5 -1
- package/dist/queue/dead-letter.js.map +1 -1
- package/dist/queue/drain.d.ts +3 -2
- package/dist/queue/drain.d.ts.map +1 -1
- package/dist/queue/drain.js +3 -2
- package/dist/queue/drain.js.map +1 -1
- package/dist/queue/flush.d.ts +28 -12
- package/dist/queue/flush.d.ts.map +1 -1
- package/dist/queue/flush.js +43 -18
- package/dist/queue/flush.js.map +1 -1
- package/dist/queue/handlers/send-event.d.ts.map +1 -1
- package/dist/queue/handlers/send-event.js.map +1 -1
- package/dist/queue/index.d.ts +1 -2
- package/dist/queue/index.d.ts.map +1 -1
- package/dist/queue/index.js +2 -2
- package/dist/queue/index.js.map +1 -1
- package/dist/queue/paths.d.ts +4 -2
- package/dist/queue/paths.d.ts.map +1 -1
- package/dist/queue/paths.js +4 -2
- package/dist/queue/paths.js.map +1 -1
- package/dist/queue/process-file.d.ts +5 -1
- package/dist/queue/process-file.d.ts.map +1 -1
- package/dist/queue/process-file.js +5 -1
- package/dist/queue/process-file.js.map +1 -1
- package/dist/queue/snapshot.d.ts +4 -1
- package/dist/queue/snapshot.d.ts.map +1 -1
- package/dist/queue/snapshot.js +4 -1
- package/dist/queue/snapshot.js.map +1 -1
- package/dist/queue/spawn.d.ts +1 -3
- package/dist/queue/spawn.d.ts.map +1 -1
- package/dist/queue/spawn.js +1 -3
- package/dist/queue/spawn.js.map +1 -1
- package/dist/queue/submit.d.ts +6 -1
- package/dist/queue/submit.d.ts.map +1 -1
- package/dist/queue/submit.js +6 -1
- package/dist/queue/submit.js.map +1 -1
- package/dist/queue/types.d.ts +5 -1
- package/dist/queue/types.d.ts.map +1 -1
- package/dist/queue/types.js +5 -1
- package/dist/queue/types.js.map +1 -1
- package/dist/queue/worker-log.d.ts +3 -1
- package/dist/queue/worker-log.d.ts.map +1 -1
- package/dist/queue/worker-log.js +3 -1
- package/dist/queue/worker-log.js.map +1 -1
- package/package.json +3 -1
package/dist/lib/config.d.ts
CHANGED
|
@@ -5,141 +5,298 @@
|
|
|
5
5
|
* 1. Global: ~/.ironbee/config.json
|
|
6
6
|
* 2. Project: <projectDir>/.ironbee/config.json
|
|
7
7
|
*
|
|
8
|
-
* Project config overrides global config (
|
|
8
|
+
* Project config overrides global config (deep merge for nested sections,
|
|
9
|
+
* shallow for primitives — see deepMerge).
|
|
10
|
+
*
|
|
11
|
+
* The pre-split layout (top-level `verifyPatterns` / `additionalVerifyPatterns`)
|
|
12
|
+
* is no longer supported. Configs carrying those fields throw at load time —
|
|
13
|
+
* patterns must move under `browser.*` (or the appropriate runtime under
|
|
14
|
+
* `backend.<runtime>.*`).
|
|
9
15
|
*/
|
|
10
|
-
|
|
16
|
+
/** Backend MCP servers in the runtime registry. Code change to extend. */
|
|
17
|
+
export declare const BACKEND_SERVERS: readonly string[];
|
|
18
|
+
/** Map runtime key (`node`) → backend server name (`node-devtools`). */
|
|
19
|
+
export declare const RUNTIME_TO_SERVER: Record<string, string>;
|
|
20
|
+
/** A single evidence path under a `RequiredToolsConfig`. */
|
|
21
|
+
export interface EvidencePath {
|
|
22
|
+
/** Stable identifier — used in `verification_requested.modes` and block messages. */
|
|
23
|
+
name: string;
|
|
11
24
|
/**
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* Examples: "*.ts", "*.css", "src/components/**\/*.tsx"
|
|
25
|
+
* All entries must be satisfied for this path to count.
|
|
26
|
+
* String → exact tool must be present. `{ anyOf }` → at least one of the listed tools.
|
|
15
27
|
*/
|
|
28
|
+
allOf: (string | {
|
|
29
|
+
anyOf: string[];
|
|
30
|
+
})[];
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Per-cycle required-tools spec. The gate validates by:
|
|
34
|
+
* 1. All `alwaysRequired` tools are present, AND
|
|
35
|
+
* 2. At least one `evidencePaths` entry is fully satisfied (or evidencePaths is empty).
|
|
36
|
+
*/
|
|
37
|
+
export interface RequiredToolsConfig {
|
|
38
|
+
alwaysRequired: string[];
|
|
39
|
+
evidencePaths: EvidencePath[];
|
|
40
|
+
}
|
|
41
|
+
/** Browser-cycle config block. */
|
|
42
|
+
export interface BrowserCycleConfig {
|
|
16
43
|
verifyPatterns?: string[];
|
|
17
|
-
/**
|
|
18
|
-
* Additional glob patterns appended to verifyPatterns (or the defaults).
|
|
19
|
-
* Use this to extend the default list without replacing it.
|
|
20
|
-
*/
|
|
21
44
|
additionalVerifyPatterns?: string[];
|
|
45
|
+
alwaysRequired?: string[];
|
|
46
|
+
evidencePaths?: EvidencePath[];
|
|
47
|
+
}
|
|
48
|
+
/** Per-runtime backend cycle config block (e.g. `backend.node`). */
|
|
49
|
+
export interface BackendRuntimeConfig {
|
|
50
|
+
verifyPatterns?: string[];
|
|
51
|
+
additionalVerifyPatterns?: string[];
|
|
52
|
+
alwaysRequired?: string[];
|
|
53
|
+
evidencePaths?: EvidencePath[];
|
|
54
|
+
}
|
|
55
|
+
/** Top-level `backend` config — runtime-keyed (today: `node`). */
|
|
56
|
+
export interface BackendConfig {
|
|
57
|
+
node?: BackendRuntimeConfig;
|
|
58
|
+
[runtime: string]: BackendRuntimeConfig | undefined;
|
|
59
|
+
}
|
|
60
|
+
export interface IronBeeConfig {
|
|
22
61
|
/**
|
|
23
|
-
* Glob patterns for files to exclude from verification.
|
|
24
|
-
*
|
|
25
|
-
*
|
|
62
|
+
* Glob patterns for files to exclude from verification. Applies to every
|
|
63
|
+
* cycle (browser and all backend runtimes). Checked first — matches here
|
|
64
|
+
* are skipped regardless of which cycle's patterns would otherwise match.
|
|
26
65
|
*/
|
|
27
66
|
ignoredVerifyPatterns?: string[];
|
|
28
67
|
/** Maximum retry attempts before allowing completion despite failures. */
|
|
29
68
|
maxRetries?: number;
|
|
69
|
+
/** Browser-cycle config (patterns + required tools). */
|
|
70
|
+
browser?: BrowserCycleConfig;
|
|
71
|
+
/** Backend cycles, keyed by runtime (`node`, future `python`, `java`, …). */
|
|
72
|
+
backend?: BackendConfig;
|
|
30
73
|
/**
|
|
31
74
|
* IronBee Collector configuration for remote event ingestion. When the
|
|
32
75
|
* section is present and `enable` is not explicitly `false`, events are
|
|
33
76
|
* sent to the collector in addition to local storage.
|
|
34
77
|
*/
|
|
35
78
|
collector?: {
|
|
79
|
+
enable?: boolean;
|
|
80
|
+
url?: string;
|
|
81
|
+
apiKey?: string;
|
|
82
|
+
batchSize?: number;
|
|
36
83
|
/**
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
*
|
|
84
|
+
* Per-request HTTP timeout in milliseconds. Single-event interactive
|
|
85
|
+
* sends keep the legacy 3000ms cap (writes from `appendAction` must
|
|
86
|
+
* not block hooks). Batched sends from analytics emit
|
|
87
|
+
* (`sendEventsBatchToCollector`) honor this value — default 10000ms,
|
|
88
|
+
* since N-event payloads can be hundreds of KB on slow links.
|
|
89
|
+
* Clamped to [1000, 60000] at use site.
|
|
42
90
|
*/
|
|
91
|
+
timeoutMs?: number;
|
|
92
|
+
};
|
|
93
|
+
/**
|
|
94
|
+
* Recording enforcement. Browser-only — backend cycles never trigger
|
|
95
|
+
* recording. Presence of the section opts in; `enable: false` opts out.
|
|
96
|
+
*/
|
|
97
|
+
recording?: {
|
|
43
98
|
enable?: boolean;
|
|
99
|
+
};
|
|
100
|
+
/** Job queue tuning. Presence opts in; `enable: false` opts out. */
|
|
101
|
+
jobQueue?: {
|
|
102
|
+
enable?: boolean;
|
|
103
|
+
autoFlushSizeBytes?: number;
|
|
104
|
+
autoFlushIntervalSeconds?: number;
|
|
105
|
+
};
|
|
106
|
+
/**
|
|
107
|
+
* Session analytics collection. Presence-as-opt-in: the `analytics`
|
|
108
|
+
* section being in config.json turns analytics on; `enable: false`
|
|
109
|
+
* explicitly opts out. Same semantics as `jobQueue` / `recording` /
|
|
110
|
+
* `collector`. The CLI projects the host transcript JSONL into a
|
|
111
|
+
* `SessionAnalytics` record (no content) and ships it via the existing
|
|
112
|
+
* collector pipeline as a `session_analytics` event.
|
|
113
|
+
*/
|
|
114
|
+
analytics?: {
|
|
115
|
+
enable?: boolean;
|
|
116
|
+
/** When `true`, project + emit at every Stop hook. When `false`, only SessionEnd. Default `true`. */
|
|
117
|
+
emitOnStop?: boolean;
|
|
118
|
+
/** Throttle: skip Stop-hook projection if last successful emit was within this many seconds. Default 0 (disabled). */
|
|
119
|
+
emitOnStopMinIntervalSeconds?: number;
|
|
44
120
|
/**
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* `
|
|
121
|
+
* Per-event-type opt-in for the granular turn / step wire records
|
|
122
|
+
* (`session_turn_analytics`, `session_turn_step_analytics`).
|
|
123
|
+
* **Default `false`** — opt-in by setting `true`.
|
|
124
|
+
*
|
|
125
|
+
* Inverse of the `analytics` master switch (which is presence-as-opt-in)
|
|
126
|
+
* because turn/step events are high-volume secondary signals that
|
|
127
|
+
* not every collector consumer wants. The base `session_analytics`
|
|
128
|
+
* record always ships when analytics is enabled.
|
|
48
129
|
*/
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
apiKey?: string;
|
|
130
|
+
emitTurnEvents?: boolean;
|
|
131
|
+
emitStepEvents?: boolean;
|
|
52
132
|
/**
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
133
|
+
* When true (default), emit one `api_request` wire event per
|
|
134
|
+
* assistant message line in the transcript (success + failure).
|
|
135
|
+
* **Default `true` (opt-out)** — inverse of turn/step gates; per-
|
|
136
|
+
* request audit is the primary value of the analytics pipeline for
|
|
137
|
+
* backend cost accounting. Set explicitly to `false` to suppress.
|
|
57
138
|
*/
|
|
58
|
-
|
|
139
|
+
emitApiRequestEvents?: boolean;
|
|
59
140
|
};
|
|
60
141
|
/**
|
|
61
|
-
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
* (or any sub-key) turns enforcement on. Set `enable: false` explicitly
|
|
67
|
-
* to disable while keeping the section around. Section absent → off.
|
|
68
|
-
* Symmetric with `jobQueue` and `collector`.
|
|
142
|
+
* Verification enforcement. **Inverse semantics from `recording`/`jobQueue`/`collector`**:
|
|
143
|
+
* verification is the core feature, opt-out by `enable: false`. Section absent
|
|
144
|
+
* or `enable !== false` → enabled. When disabled, ironbee runs in monitoring-only
|
|
145
|
+
* mode — no enforcement hooks, no skill/rule, no MCP servers; only session
|
|
146
|
+
* lifecycle and tool_call events still flow to the collector.
|
|
69
147
|
*/
|
|
70
|
-
|
|
148
|
+
verification?: {
|
|
71
149
|
enable?: boolean;
|
|
72
150
|
};
|
|
73
151
|
/**
|
|
74
|
-
*
|
|
75
|
-
* adding `"jobQueue": {}` (or any sub-key) enables the queue. To opt out
|
|
76
|
-
* after the section exists, set `enable: false` explicitly.
|
|
77
|
-
*
|
|
78
|
-
* `enable`: master switch. Defaults to `true` when this section is
|
|
79
|
-
* present, `false` when absent. Set explicitly to `false` to disable
|
|
80
|
-
* without removing the rest of the config (e.g. keep your custom
|
|
81
|
-
* `autoFlushSizeBytes` around for later).
|
|
152
|
+
* Historical-session import tuning. Read by `ironbee import`.
|
|
82
153
|
*
|
|
83
|
-
* `
|
|
84
|
-
*
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
* to disable size-based auto-flush. Default 32768 (32 KB).
|
|
154
|
+
* `concurrency` is the default number of sessions processed in parallel.
|
|
155
|
+
* Resolution order: `--concurrency` flag > `import.concurrency` >
|
|
156
|
+
* built-in default (4). Lower = gentler on the collector; higher = faster
|
|
157
|
+
* for large backfills.
|
|
88
158
|
*/
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
autoFlushSizeBytes?: number;
|
|
159
|
+
import?: {
|
|
160
|
+
concurrency?: number;
|
|
92
161
|
};
|
|
93
|
-
/** Allow additional config fields. */
|
|
162
|
+
/** Allow additional config fields (e.g. `browserDevTools` / `nodeDevTools`). */
|
|
94
163
|
[key: string]: unknown;
|
|
95
164
|
}
|
|
165
|
+
/** Browser default verify patterns — preserves the pre-split list as-is. */
|
|
166
|
+
export declare const DEFAULT_BROWSER_VERIFY_PATTERNS: string[];
|
|
167
|
+
/** Browser-cycle required tools — strict all-of, no alternative paths. */
|
|
168
|
+
export declare const DEFAULT_BROWSER_ALWAYS_REQUIRED: string[];
|
|
169
|
+
/** Node-cycle required tools — connect always; then probe path or log path. */
|
|
170
|
+
export declare const DEFAULT_BACKEND_NODE_ALWAYS_REQUIRED: string[];
|
|
171
|
+
export declare const DEFAULT_BACKEND_NODE_EVIDENCE_PATHS: EvidencePath[];
|
|
96
172
|
export declare function loadConfig(projectDir?: string): IronBeeConfig;
|
|
97
173
|
/**
|
|
98
|
-
*
|
|
174
|
+
* Returns the names of cycles whose pattern set matches `filePath`.
|
|
175
|
+
* Used by verify-gate to determine which cycles are active for a Stop hook.
|
|
99
176
|
*
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
|
|
103
|
-
|
|
177
|
+
* Order: browser first, then each registered backend runtime. `ignoredVerifyPatterns`
|
|
178
|
+
* applies globally — a file matched there activates no cycles.
|
|
179
|
+
*/
|
|
180
|
+
export declare function getActiveCycles(filePath: string, config: IronBeeConfig): string[];
|
|
181
|
+
/**
|
|
182
|
+
* Returns true if a file is under verification by *any* cycle. Used by
|
|
183
|
+
* `clear-verdict` and `require-verdict` hooks where the question is just
|
|
184
|
+
* "should this edit be tracked / gated?", regardless of which cycle.
|
|
104
185
|
*/
|
|
105
186
|
export declare function requiresVerification(filePath: string, config: IronBeeConfig): boolean;
|
|
187
|
+
/**
|
|
188
|
+
* Per-cycle resolved required-tools spec. Falls back to defaults at this layer
|
|
189
|
+
* so consumers always get a complete `{ alwaysRequired, evidencePaths }` shape.
|
|
190
|
+
*
|
|
191
|
+
* Validity rule: at least one of `alwaysRequired` or `evidencePaths` must be
|
|
192
|
+
* non-empty. Both empty → config error (caught here, surfaced to caller).
|
|
193
|
+
*/
|
|
194
|
+
export declare function getRequiredToolsConfig(config: IronBeeConfig, cycle: string): RequiredToolsConfig;
|
|
106
195
|
export interface BrowserDevToolsMCPConfig {
|
|
107
196
|
[key: string]: unknown;
|
|
108
197
|
}
|
|
198
|
+
/** Returns the MCP server entry for `browser-devtools` (PLATFORM=browser, bdt_). */
|
|
199
|
+
export declare function getMcpServerEntry(projectDir?: string): BrowserDevToolsMCPConfig;
|
|
200
|
+
/** Returns the MCP server entry for `node-devtools` (PLATFORM=node, ndt_). */
|
|
201
|
+
export declare function getNodeDevToolsMcpEntry(projectDir?: string): BrowserDevToolsMCPConfig;
|
|
202
|
+
export declare function getMaxRetries(config: IronBeeConfig): number;
|
|
109
203
|
/**
|
|
110
|
-
* Returns the
|
|
111
|
-
*
|
|
112
|
-
*
|
|
113
|
-
*
|
|
114
|
-
*
|
|
204
|
+
* Returns true when the IronBee Collector is configured + active for this
|
|
205
|
+
* config — i.e. the collector section is present, `enable !== false`, the
|
|
206
|
+
* `url` is non-empty, and the `IRONBEE_COLLECTOR=false` env override isn't
|
|
207
|
+
* set. Pure check over an already-loaded `IronBeeConfig` so callers that
|
|
208
|
+
* have a config in hand don't pay an extra `loadConfig` round-trip.
|
|
115
209
|
*
|
|
116
|
-
*
|
|
117
|
-
*
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
*
|
|
210
|
+
* Used by the auto-enable behavior in `isJobQueueEnabled` /
|
|
211
|
+
* `isRecordingEnabled` / `isAnalyticsEnabled`: when the operator has
|
|
212
|
+
* configured a collector, we treat all three feature switches as
|
|
213
|
+
* implicitly opted in. Rationale: setting up a collector is a strong
|
|
214
|
+
* signal that the operator wants events to flow there, and these three
|
|
215
|
+
* sections are exactly what makes events flow (queue dispatch, recording
|
|
216
|
+
* enforcement, analytics derivation). Explicit `enable: false` on any of
|
|
217
|
+
* them still wins — the auto-enable only fires for "section absent".
|
|
122
218
|
*/
|
|
123
|
-
export declare function
|
|
124
|
-
export declare function getMaxRetries(config: IronBeeConfig): number;
|
|
219
|
+
export declare function isCollectorConfigured(config: IronBeeConfig): boolean;
|
|
125
220
|
/**
|
|
126
221
|
* Returns true when the job queue layer is enabled for this project.
|
|
127
222
|
*
|
|
128
|
-
*
|
|
129
|
-
*
|
|
130
|
-
*
|
|
131
|
-
*
|
|
132
|
-
*
|
|
133
|
-
*
|
|
134
|
-
* Used as both a producer-side gate (track-action skips wire construction
|
|
135
|
-
* when off) and a defense-in-depth guard inside `submit()` itself.
|
|
223
|
+
* Resolution:
|
|
224
|
+
* 1. Section explicitly disabled (`enable: false`) → `false`.
|
|
225
|
+
* 2. Section present (any other shape) → `true` (presence-as-opt-in).
|
|
226
|
+
* 3. Collector configured + valid → `true` (auto-enable: a collector is
|
|
227
|
+
* pointless without a queue feeding it tool_call events).
|
|
228
|
+
* 4. Otherwise → `false`.
|
|
136
229
|
*/
|
|
137
230
|
export declare function isJobQueueEnabled(projectDir?: string): boolean;
|
|
138
231
|
/**
|
|
139
232
|
* Returns true when recording enforcement is enabled for this project.
|
|
140
|
-
* Same presence-as-opt-in
|
|
141
|
-
*
|
|
142
|
-
* `enable: false` explicitly to suspend without removing the section.
|
|
233
|
+
* Same resolution as `isJobQueueEnabled` (presence-as-opt-in + collector
|
|
234
|
+
* auto-enable + explicit-disable wins).
|
|
143
235
|
*/
|
|
144
236
|
export declare function isRecordingEnabled(projectDir?: string): boolean;
|
|
237
|
+
/**
|
|
238
|
+
* Returns true when verification enforcement is enabled for this config.
|
|
239
|
+
*
|
|
240
|
+
* **Inverse semantics from `isJobQueueEnabled` / `isRecordingEnabled`**:
|
|
241
|
+
* verification is the core feature, opt-out by `enable: false`. Section absent,
|
|
242
|
+
* empty section, or `enable: true` all return true. Only `enable: false`
|
|
243
|
+
* returns false.
|
|
244
|
+
*/
|
|
245
|
+
export declare function getVerificationEnabled(config: IronBeeConfig): boolean;
|
|
246
|
+
/**
|
|
247
|
+
* Returns true when analytics collection is enabled for this project.
|
|
248
|
+
* Same resolution as `isJobQueueEnabled` / `isRecordingEnabled`:
|
|
249
|
+
* explicit-disable wins, presence opts in, and collector configured +
|
|
250
|
+
* section absent auto-enables.
|
|
251
|
+
*/
|
|
252
|
+
export declare function isAnalyticsEnabled(projectDir?: string): boolean;
|
|
253
|
+
/** Whether the Stop hook should project + emit analytics. Default `true` when analytics is enabled. */
|
|
254
|
+
export declare function isAnalyticsEmitOnStopEnabled(projectDir?: string): boolean;
|
|
255
|
+
/**
|
|
256
|
+
* Throttle interval (seconds) for Stop-hook projection. Default 0 (disabled).
|
|
257
|
+
*
|
|
258
|
+
* The CLI used to default to 30s here as a "don't hammer the backend on
|
|
259
|
+
* hot Stop loops" guard. That was a CLI-side judgment about cadence — backends
|
|
260
|
+
* can rate-limit / dedupe / aggregate however they want, and a 30s default
|
|
261
|
+
* silently dropped per-Stop visibility (especially painful for verify-gate
|
|
262
|
+
* retry loops where each Stop carries fresh signal). Default is now 0;
|
|
263
|
+
* operators who DO want CLI-side throttling can set the config explicitly.
|
|
264
|
+
* `throttleState` in `hook-trigger.ts` returns null when interval ≤ 0, so
|
|
265
|
+
* 0 = no-op fast path.
|
|
266
|
+
*/
|
|
267
|
+
export declare function getAnalyticsEmitOnStopMinIntervalSeconds(projectDir?: string): number;
|
|
268
|
+
/**
|
|
269
|
+
* Returns true when the per-turn `session_turn_analytics` wire records should
|
|
270
|
+
* be emitted alongside `session_analytics`. **Default `false` (opt-in)** —
|
|
271
|
+
* inverse of the `analytics` master switch's presence-as-opt-in.
|
|
272
|
+
*
|
|
273
|
+
* Rationale: turn-grain records are high-volume secondary signal; backends
|
|
274
|
+
* that only want session aggregates shouldn't pay for them by default. The
|
|
275
|
+
* base `session_analytics` record always ships when analytics is enabled.
|
|
276
|
+
*/
|
|
277
|
+
export declare function isAnalyticsTurnEventsEnabled(projectDir?: string): boolean;
|
|
278
|
+
/**
|
|
279
|
+
* Returns true when the per-step `session_turn_step_analytics` wire records
|
|
280
|
+
* should be emitted. **Default `false` (opt-in)** — same rationale as
|
|
281
|
+
* {@link isAnalyticsTurnEventsEnabled}, with one extra dimension: step-grain
|
|
282
|
+
* records are an order of magnitude higher volume than turn-grain.
|
|
283
|
+
*
|
|
284
|
+
* Independent of `emitTurnEvents`. Backend can reconstruct turn from steps,
|
|
285
|
+
* so step-only / turn-only / both / neither are all valid combinations.
|
|
286
|
+
*/
|
|
287
|
+
export declare function isAnalyticsStepEventsEnabled(projectDir?: string): boolean;
|
|
288
|
+
/**
|
|
289
|
+
* Returns true when the per-API-request `api_request` wire records should be
|
|
290
|
+
* emitted. **Default `true` (opt-out)** — INVERSE of the turn / step event
|
|
291
|
+
* gating, mirroring the `verification.enable` opt-out semantics. Per-request
|
|
292
|
+
* audit (cost attribution, failure tracking, request-id timeline) is the
|
|
293
|
+
* primary value of the analytics pipeline for backend cost accounting, so
|
|
294
|
+
* it ships by default. Operators can opt out via `emitApiRequestEvents: false`
|
|
295
|
+
* if backend doesn't consume them.
|
|
296
|
+
*
|
|
297
|
+
* Independent of `emitTurnEvents` / `emitStepEvents`. The `analytics` master
|
|
298
|
+
* switch (section presence) still gates everything below it — without
|
|
299
|
+
* `analytics` in config, no api_request events ship regardless of this flag.
|
|
300
|
+
*/
|
|
301
|
+
export declare function isAnalyticsApiRequestEventsEnabled(projectDir?: string): boolean;
|
|
145
302
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/lib/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|