@ironbee-ai/cli 0.8.3 → 0.9.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.
Files changed (112) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +42 -17
  3. package/dist/clients/claude/commands/ironbee-verify.md +19 -106
  4. package/dist/clients/claude/hooks/require-verdict.d.ts +3 -3
  5. package/dist/clients/claude/hooks/require-verdict.js +5 -5
  6. package/dist/clients/claude/hooks/require-verification.d.ts +6 -5
  7. package/dist/clients/claude/hooks/require-verification.d.ts.map +1 -1
  8. package/dist/clients/claude/hooks/require-verification.js +20 -17
  9. package/dist/clients/claude/hooks/require-verification.js.map +1 -1
  10. package/dist/clients/claude/hooks/track-action-monitor.d.ts.map +1 -1
  11. package/dist/clients/claude/hooks/track-action-monitor.js +4 -1
  12. package/dist/clients/claude/hooks/track-action-monitor.js.map +1 -1
  13. package/dist/clients/claude/hooks/track-action.d.ts +11 -8
  14. package/dist/clients/claude/hooks/track-action.d.ts.map +1 -1
  15. package/dist/clients/claude/hooks/track-action.js +14 -9
  16. package/dist/clients/claude/hooks/track-action.js.map +1 -1
  17. package/dist/clients/claude/index.d.ts.map +1 -1
  18. package/dist/clients/claude/index.js +79 -18
  19. package/dist/clients/claude/index.js.map +1 -1
  20. package/dist/clients/claude/platforms/command-verify.backend.md +74 -0
  21. package/dist/clients/claude/platforms/command-verify.browser.md +108 -0
  22. package/dist/clients/claude/platforms/command-verify.node.md +67 -0
  23. package/dist/clients/claude/platforms/rule.backend.md +23 -0
  24. package/dist/clients/claude/platforms/rule.browser.md +17 -0
  25. package/dist/clients/claude/{fragments → platforms}/rule.node.md +3 -3
  26. package/dist/clients/claude/platforms/skill.backend.md +65 -0
  27. package/dist/clients/claude/platforms/skill.browser.md +31 -0
  28. package/dist/clients/claude/{fragments → platforms}/skill.node.md +2 -2
  29. package/dist/clients/claude/rules/ironbee-verification.md +14 -13
  30. package/dist/clients/claude/skills/ironbee-verification.md +19 -49
  31. package/dist/clients/cursor/commands/ironbee-verify/SKILL.md +21 -108
  32. package/dist/clients/cursor/hooks/require-verdict.d.ts +1 -1
  33. package/dist/clients/cursor/hooks/require-verdict.js +3 -3
  34. package/dist/clients/cursor/hooks/require-verification.d.ts.map +1 -1
  35. package/dist/clients/cursor/hooks/require-verification.js +9 -5
  36. package/dist/clients/cursor/hooks/require-verification.js.map +1 -1
  37. package/dist/clients/cursor/hooks/track-action-monitor.d.ts.map +1 -1
  38. package/dist/clients/cursor/hooks/track-action-monitor.js +4 -1
  39. package/dist/clients/cursor/hooks/track-action-monitor.js.map +1 -1
  40. package/dist/clients/cursor/hooks/track-action.d.ts +14 -12
  41. package/dist/clients/cursor/hooks/track-action.d.ts.map +1 -1
  42. package/dist/clients/cursor/hooks/track-action.js +25 -16
  43. package/dist/clients/cursor/hooks/track-action.js.map +1 -1
  44. package/dist/clients/cursor/index.d.ts.map +1 -1
  45. package/dist/clients/cursor/index.js +45 -11
  46. package/dist/clients/cursor/index.js.map +1 -1
  47. package/dist/clients/cursor/platforms/command-verify.backend.md +74 -0
  48. package/dist/clients/cursor/platforms/command-verify.browser.md +108 -0
  49. package/dist/clients/cursor/platforms/command-verify.node.md +67 -0
  50. package/dist/clients/cursor/platforms/rule.backend.md +23 -0
  51. package/dist/clients/cursor/platforms/rule.browser.md +17 -0
  52. package/dist/clients/cursor/{fragments → platforms}/rule.node.md +3 -3
  53. package/dist/clients/cursor/platforms/skill.backend.md +65 -0
  54. package/dist/clients/cursor/platforms/skill.browser.md +31 -0
  55. package/dist/clients/cursor/{fragments → platforms}/skill.node.md +2 -2
  56. package/dist/clients/cursor/rules/ironbee-verification.mdc +14 -13
  57. package/dist/clients/cursor/skills/ironbee-verification.md +19 -49
  58. package/dist/commands/backend.d.ts +17 -0
  59. package/dist/commands/backend.d.ts.map +1 -0
  60. package/dist/commands/backend.js +58 -0
  61. package/dist/commands/backend.js.map +1 -0
  62. package/dist/commands/browser.d.ts +19 -0
  63. package/dist/commands/browser.d.ts.map +1 -0
  64. package/dist/commands/browser.js +60 -0
  65. package/dist/commands/browser.js.map +1 -0
  66. package/dist/commands/config.d.ts +5 -5
  67. package/dist/commands/config.d.ts.map +1 -1
  68. package/dist/commands/config.js +13 -11
  69. package/dist/commands/config.js.map +1 -1
  70. package/dist/commands/cycle-toggle.d.ts +89 -0
  71. package/dist/commands/cycle-toggle.d.ts.map +1 -0
  72. package/dist/commands/cycle-toggle.js +264 -0
  73. package/dist/commands/cycle-toggle.js.map +1 -0
  74. package/dist/commands/node.d.ts +16 -0
  75. package/dist/commands/node.d.ts.map +1 -0
  76. package/dist/commands/node.js +57 -0
  77. package/dist/commands/node.js.map +1 -0
  78. package/dist/hooks/core/actions.d.ts +11 -2
  79. package/dist/hooks/core/actions.d.ts.map +1 -1
  80. package/dist/hooks/core/actions.js.map +1 -1
  81. package/dist/hooks/core/verify-gate.d.ts.map +1 -1
  82. package/dist/hooks/core/verify-gate.js +44 -14
  83. package/dist/hooks/core/verify-gate.js.map +1 -1
  84. package/dist/index.js +9 -6
  85. package/dist/index.js.map +1 -1
  86. package/dist/lib/config.d.ts +142 -41
  87. package/dist/lib/config.d.ts.map +1 -1
  88. package/dist/lib/config.js +251 -82
  89. package/dist/lib/config.js.map +1 -1
  90. package/dist/lib/platform-section.d.ts +126 -0
  91. package/dist/lib/platform-section.d.ts.map +1 -0
  92. package/dist/lib/platform-section.js +279 -0
  93. package/dist/lib/platform-section.js.map +1 -0
  94. package/package.json +1 -1
  95. package/dist/clients/claude/fragments/command-verify.node.md +0 -33
  96. package/dist/clients/cursor/fragments/command-verify.node.md +0 -33
  97. package/dist/commands/backend-toggle.d.ts +0 -56
  98. package/dist/commands/backend-toggle.d.ts.map +0 -1
  99. package/dist/commands/backend-toggle.js +0 -199
  100. package/dist/commands/backend-toggle.js.map +0 -1
  101. package/dist/commands/disable-backend.d.ts +0 -14
  102. package/dist/commands/disable-backend.d.ts.map +0 -1
  103. package/dist/commands/disable-backend.js +0 -38
  104. package/dist/commands/disable-backend.js.map +0 -1
  105. package/dist/commands/enable-backend.d.ts +0 -15
  106. package/dist/commands/enable-backend.d.ts.map +0 -1
  107. package/dist/commands/enable-backend.js +0 -39
  108. package/dist/commands/enable-backend.js.map +0 -1
  109. package/dist/lib/runtime-section.d.ts +0 -118
  110. package/dist/lib/runtime-section.d.ts.map +0 -1
  111. package/dist/lib/runtime-section.js +0 -256
  112. package/dist/lib/runtime-section.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"track-action-monitor.js","sourceRoot":"","sources":["../../../../src/clients/cursor/hooks/track-action-monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"track-action-monitor.js","sourceRoot":"","sources":["../../../../src/clients/cursor/hooks/track-action-monitor.ts"],"names":[],"mappings":"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"}
@@ -8,15 +8,17 @@
8
8
  * `duration`) that we fold into the event.
9
9
  *
10
10
  * Responsibilities:
11
- * 1. **browser-devtools tools** (`MCP:bdt_*`): classify via the shared
12
- * taxonomy so tool_type/tool_name/mcp_server match Claude's schema,
13
- * append the tool_call entry to `actions.jsonl` (verify-gate source
14
- * of truth), update recording state, and extract nested `callTool()`
15
- * from bdt_execute. Queue submit is SKIPPED: browser-devtools-mcp
16
- * ships these directly to the collector already. tool_input is kept
17
- * AS-IS for these so the local nested parser keeps working.
11
+ * 1. **devtools MCP tools** (`MCP:bdt_*` / `MCP:ndt_*` / `MCP:bedt_*`):
12
+ * classify via the shared taxonomy so tool_type/tool_name/mcp_server
13
+ * match Claude's schema, append the tool_call entry to
14
+ * `actions.jsonl` (verify-gate source of truth); for browser tools,
15
+ * also update recording state and extract nested `callTool()` from
16
+ * bdt_execute. Queue submit is SKIPPED: all three modes ship the
17
+ * same `browser-devtools-mcp` package and self-deliver `tool_call`
18
+ * events to the collector. tool_input is kept AS-IS for these so
19
+ * verify-gate and the local nested parser see the raw shape.
18
20
  * 2. **All other tools** (Shell / Read / Write / Grep / Delete / Task /
19
- * non-browser MCP): submit a send_event job. `tool_input` is replaced
21
+ * non-devtools MCP): submit a send_event job. `tool_input` is replaced
20
22
  * with a per-tool safe projection (see `extractCursorToolInput`) —
21
23
  * only labels (`file_path`, `pattern`, `working_directory`,
22
24
  * `subagent_type`, …) survive, never raw content. `tool_output` stays
@@ -25,10 +27,10 @@
25
27
  * byte counts.
26
28
  *
27
29
  * MCP server note: Cursor's wire format (`MCP:<tool>`) does not carry the
28
- * server name, so the classifier returns `mcp_server: null`. For bdt_*
29
- * tools we override with `browser-devtools` locally the matcher routing
30
- * + tool prefix are enough to identify the server. For other MCP tools we
31
- * leave it null (unknown).
30
+ * server name, so the classifier returns `mcp_server: null`. For
31
+ * `bdt_*` / `ndt_*` / `bedt_*` we override locally via prefix lookup
32
+ * matcher routing + tool prefix are enough to identify the server. For
33
+ * other MCP tools we leave it null (unknown).
32
34
  *
33
35
  * On failure: the event's `error` field is populated (with `failure_type:`
34
36
  * prefix + interrupt marker when applicable) and the response is omitted.
@@ -1 +1 @@
1
- {"version":3,"file":"track-action.d.ts","sourceRoot":"","sources":["../../../../src/clients/cursor/hooks/track-action.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAkIH,wBAAsB,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyJ3D"}
1
+ {"version":3,"file":"track-action.d.ts","sourceRoot":"","sources":["../../../../src/clients/cursor/hooks/track-action.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAwIH,wBAAsB,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA0J3D"}
@@ -9,15 +9,17 @@
9
9
  * `duration`) that we fold into the event.
10
10
  *
11
11
  * Responsibilities:
12
- * 1. **browser-devtools tools** (`MCP:bdt_*`): classify via the shared
13
- * taxonomy so tool_type/tool_name/mcp_server match Claude's schema,
14
- * append the tool_call entry to `actions.jsonl` (verify-gate source
15
- * of truth), update recording state, and extract nested `callTool()`
16
- * from bdt_execute. Queue submit is SKIPPED: browser-devtools-mcp
17
- * ships these directly to the collector already. tool_input is kept
18
- * AS-IS for these so the local nested parser keeps working.
12
+ * 1. **devtools MCP tools** (`MCP:bdt_*` / `MCP:ndt_*` / `MCP:bedt_*`):
13
+ * classify via the shared taxonomy so tool_type/tool_name/mcp_server
14
+ * match Claude's schema, append the tool_call entry to
15
+ * `actions.jsonl` (verify-gate source of truth); for browser tools,
16
+ * also update recording state and extract nested `callTool()` from
17
+ * bdt_execute. Queue submit is SKIPPED: all three modes ship the
18
+ * same `browser-devtools-mcp` package and self-deliver `tool_call`
19
+ * events to the collector. tool_input is kept AS-IS for these so
20
+ * verify-gate and the local nested parser see the raw shape.
19
21
  * 2. **All other tools** (Shell / Read / Write / Grep / Delete / Task /
20
- * non-browser MCP): submit a send_event job. `tool_input` is replaced
22
+ * non-devtools MCP): submit a send_event job. `tool_input` is replaced
21
23
  * with a per-tool safe projection (see `extractCursorToolInput`) —
22
24
  * only labels (`file_path`, `pattern`, `working_directory`,
23
25
  * `subagent_type`, …) survive, never raw content. `tool_output` stays
@@ -26,10 +28,10 @@
26
28
  * byte counts.
27
29
  *
28
30
  * MCP server note: Cursor's wire format (`MCP:<tool>`) does not carry the
29
- * server name, so the classifier returns `mcp_server: null`. For bdt_*
30
- * tools we override with `browser-devtools` locally the matcher routing
31
- * + tool prefix are enough to identify the server. For other MCP tools we
32
- * leave it null (unknown).
31
+ * server name, so the classifier returns `mcp_server: null`. For
32
+ * `bdt_*` / `ndt_*` / `bedt_*` we override locally via prefix lookup
33
+ * matcher routing + tool prefix are enough to identify the server. For
34
+ * other MCP tools we leave it null (unknown).
33
35
  *
34
36
  * On failure: the event's `error` field is populated (with `failure_type:`
35
37
  * prefix + interrupt marker when applicable) and the response is omitted.
@@ -49,19 +51,25 @@ const CALL_TOOL_NAME_PATTERN = /callTool\(\s*['"]([^'"]+)['"]/g;
49
51
  const MCP_PREFIX = "mcp__browser-devtools__";
50
52
  const TOOL_NAME_PREFIX = "bdt_";
51
53
  const NODE_TOOL_NAME_PREFIX = "ndt_";
54
+ const BACKEND_TOOL_NAME_PREFIX = "bedt_";
52
55
  const BROWSER_DEVTOOLS_SERVER = "browser-devtools";
53
56
  const NODE_DEVTOOLS_SERVER = "node-devtools";
57
+ const BACKEND_DEVTOOLS_SERVER = "backend-devtools";
54
58
  /** Bare (post-classification) names used for recording-state detection and nested extract gating. */
55
59
  const EXECUTE_TOOL_BARE = `${TOOL_NAME_PREFIX}execute`;
56
60
  const RECORDING_START_BARE = `${TOOL_NAME_PREFIX}content_start-recording`;
57
61
  const RECORDING_STOP_BARE = `${TOOL_NAME_PREFIX}content_stop-recording`;
58
62
  /**
59
63
  * Cursor wire format `MCP:<bare-tool>` doesn't carry the server segment, so
60
- * we identify the server by tool prefix. Both servers are the same npm
61
- * package (`browser-devtools-mcp`) — they self-ship `tool_call` events to
62
- * the collector, so the queue submit is skipped for both.
64
+ * we identify the server by tool prefix. All three devtools servers ship
65
+ * the same npm package (`browser-devtools-mcp`) — they self-ship
66
+ * `tool_call` events to the collector, so the queue submit is skipped for
67
+ * all of them.
63
68
  */
64
69
  function resolveServerByPrefix(bareToolName) {
70
+ if (bareToolName.startsWith(BACKEND_TOOL_NAME_PREFIX)) {
71
+ return BACKEND_DEVTOOLS_SERVER;
72
+ }
65
73
  if (bareToolName.startsWith(TOOL_NAME_PREFIX)) {
66
74
  return BROWSER_DEVTOOLS_SERVER;
67
75
  }
@@ -170,7 +178,8 @@ async function run(projectDir) {
170
178
  const classified = (0, util_1.classifyTool)(rawToolName, input.tool_input);
171
179
  const isBrowserTool = classified.tool_type === "mcp" && classified.tool_name.startsWith(TOOL_NAME_PREFIX);
172
180
  const isNodeTool = classified.tool_type === "mcp" && classified.tool_name.startsWith(NODE_TOOL_NAME_PREFIX);
173
- const isOurDevToolsTool = isBrowserTool || isNodeTool;
181
+ const isBackendTool = classified.tool_type === "mcp" && classified.tool_name.startsWith(BACKEND_TOOL_NAME_PREFIX);
182
+ const isOurDevToolsTool = isBrowserTool || isNodeTool || isBackendTool;
174
183
  const resolvedMcpServer = classified.tool_type === "mcp"
175
184
  ? (resolveServerByPrefix(classified.tool_name) ?? classified.mcp_server)
176
185
  : classified.mcp_server;
@@ -1 +1 @@
1
- {"version":3,"file":"track-action.js","sourceRoot":"","sources":["../../../../src/clients/cursor/hooks/track-action.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;;AAkIH,kBAyJC;AAzRD,yDAAuF;AACvF,qEAAuI;AACvI,gDAAwD;AACxD,gDAAyD;AACzD,gDAAmD;AACnD,8CAA+C;AAC/C,0CAA2E;AAC3E,kCAA+E;AAE/E,MAAM,sBAAsB,GAAW,gCAAgC,CAAC;AACxE,MAAM,UAAU,GAAW,yBAAyB,CAAC;AACrD,MAAM,gBAAgB,GAAW,MAAM,CAAC;AACxC,MAAM,qBAAqB,GAAW,MAAM,CAAC;AAC7C,MAAM,uBAAuB,GAAW,kBAAkB,CAAC;AAC3D,MAAM,oBAAoB,GAAW,eAAe,CAAC;AACrD,qGAAqG;AACrG,MAAM,iBAAiB,GAAW,GAAG,gBAAgB,SAAS,CAAC;AAC/D,MAAM,oBAAoB,GAAW,GAAG,gBAAgB,yBAAyB,CAAC;AAClF,MAAM,mBAAmB,GAAW,GAAG,gBAAgB,wBAAwB,CAAC;AAEhF;;;;;GAKG;AACH,SAAS,qBAAqB,CAAC,YAAoB;IAC/C,IAAI,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC5C,OAAO,uBAAuB,CAAC;IACnC,CAAC;IACD,IAAI,YAAY,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACjD,OAAO,oBAAoB,CAAC;IAChC,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAsBD;;;;;gCAKgC;AAChC,SAAS,4BAA4B,CAAC,IAAY;IAC9C,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,wEAAwE;AACxE,SAAS,qBAAqB,CAAC,GAAW,EAAE,UAAkB;IAC1D,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,IAAI,KAAK,GAAW,CAAC,CAAC;IACtB,KAAK,IAAI,CAAC,GAAW,UAAU,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnD,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACjB,KAAK,EAAE,CAAC;QACZ,CAAC;aAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACxB,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACd,OAAO,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,sBAAsB,CAAC,SAAkB;IAC9C,MAAM,QAAQ,GAAW,OAAO,SAAS,KAAK,QAAQ;QAClD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IAEtC,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,IAAI,GAAgB,IAAI,GAAG,EAAU,CAAC;IAC5C,IAAI,KAAK,GAA2B,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1E,OAAO,KAAK,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAW,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAEnB,IAAI,IAAI,GAAY,SAAS,CAAC;YAC9B,MAAM,SAAS,GAAW,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACxD,MAAM,IAAI,GAAW,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;YAC3D,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,UAAU,GAAW,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;gBACrD,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7B,MAAM,QAAQ,GAAuB,qBAAqB,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;oBAC1E,IAAI,QAAQ,EAAE,CAAC;wBACX,IAAI,CAAC;4BACD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;wBAChC,CAAC;wBAAC,MAAM,CAAC;4BACL,IAAI,GAAG,QAAQ,CAAC;wBACpB,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,KAAK,GAAG,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAEM,KAAK,UAAU,GAAG,CAAC,UAAkB;IACxC,IAAI,KAA6B,CAAC;IAClC,IAAI,CAAC;QACD,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAS,GAAE,CAA2B,CAAC;IAC9D,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QAClB,eAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;QAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACX,CAAC;IAED,MAAM,SAAS,GAAW,KAAK,CAAC,eAAe,IAAI,SAAS,CAAC;IAC7D,MAAM,UAAU,GAAW,GAAG,UAAU,sBAAsB,SAAS,EAAE,CAAC;IAC1E,MAAM,WAAW,GAAW,GAAG,UAAU,gBAAgB,CAAC;IAC1D,IAAA,mBAAU,EAAC,GAAG,UAAU,cAAc,CAAC,CAAC;IAExC,MAAM,WAAW,GAAW,KAAK,CAAC,SAAS,IAAI,SAAS,CAAC;IACzD,MAAM,SAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAErC,mDAAmD;IACnD,MAAM,iBAAiB,GAAY,CAAC,KAAK,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7H,CAAC,CAAC,EAAE,GAAI,KAAK,CAAC,UAAsC,EAAE,SAAS,EAAE,SAAS,EAAE;QAC5E,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;IAEvB,MAAM,UAAU,GAAuB,IAAA,mCAAmB,EAAC,UAAU,CAAC,CAAC;IACvE,MAAM,cAAc,GAAuB,IAAA,uCAAuB,EAAC,UAAU,CAAC,CAAC;IAC/E,MAAM,OAAO,GAAuB,IAAA,gCAAgB,EAAC,UAAU,CAAC,CAAC;IAEjE,gEAAgE;IAChE,wEAAwE;IACxE,uEAAuE;IACvE,mEAAmE;IACnE,+CAA+C;IAC/C,MAAM,UAAU,GAAmB,IAAA,mBAAY,EAAC,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAC/E,MAAM,aAAa,GAAY,UAAU,CAAC,SAAS,KAAK,KAAK,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACnH,MAAM,UAAU,GAAY,UAAU,CAAC,SAAS,KAAK,KAAK,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IACrH,MAAM,iBAAiB,GAAY,aAAa,IAAI,UAAU,CAAC;IAC/D,MAAM,iBAAiB,GAAkB,UAAU,CAAC,SAAS,KAAK,KAAK;QACnE,CAAC,CAAC,CAAC,qBAAqB,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC;QACxE,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;IAE5B,uEAAuE;IACvE,mEAAmE;IACnE,2BAA2B;IAC3B,wEAAwE;IACxE,2CAA2C;IAC3C,iEAAiE;IACjE,uEAAuE;IACvE,oEAAoE;IACpE,uCAAuC;IACvC,MAAM,iBAAiB,GAAY,iBAAiB;QAChD,CAAC,CAAC,iBAAiB;QACnB,CAAC,CAAC,IAAA,6BAAsB,EAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IAE7D,uEAAuE;IACvE,uEAAuE;IACvE,mEAAmE;IACnE,yCAAyC;IACzC,MAAM,QAAQ,GAAuB,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IACjJ,IAAI,QAA4B,CAAC;IACjC,IAAI,QAAQ,EAAE,CAAC;QACX,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9B,CAAC;QACD,MAAM,MAAM,GAAW,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,QAAQ,GAAG,GAAG,MAAM,GAAG,QAAQ,EAAE,CAAC;IACtC,CAAC;IAED,qEAAqE;IACrE,wEAAwE;IACxE,oDAAoD;IACpD,MAAM,KAAK,GAAmB;QAC1B,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC;QAC1B,IAAI,EAAE,WAAW;QACjB,SAAS;QACT,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,UAAU,EAAE,iBAAiB;QAC7B,eAAe,EAAE,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC;QAC3C,uDAAuD;QACvD,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW;QACvD,kBAAkB,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;QACtE,WAAW,EAAE,UAAW;QACxB,eAAe,EAAE,cAAc;QAC/B,QAAQ,EAAE,OAAO;QACjB,mEAAmE;QACnE,iEAAiE;QACjE,+CAA+C;QAC/C,QAAQ,EAAE,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;QACpE,UAAU,EAAE,iBAAiB;QAC7B,KAAK,EAAE,QAAQ;KAClB,CAAC;IAEF,IAAI,iBAAiB,EAAE,CAAC;QACpB,6DAA6D;QAC7D,mEAAmE;QACnE,oEAAoE;QACpE,iEAAiE;QACjE,MAAM,IAAA,sBAAY,EAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAEvC,+DAA+D;QAC/D,+BAA+B;QAC/B,IAAI,aAAa,EAAE,CAAC;YAChB,IAAI,UAAU,CAAC,SAAS,KAAK,oBAAoB,EAAE,CAAC;gBAChD,IAAA,kCAAkB,EAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBACrC,eAAM,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YACpD,CAAC;iBAAM,IAAI,UAAU,CAAC,SAAS,KAAK,mBAAmB,EAAE,CAAC;gBACtD,IAAA,kCAAkB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBACtC,eAAM,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YACpD,CAAC;QACL,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,kEAAkE;QAClE,WAAW,CAAC,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC;IACD,eAAM,CAAC,KAAK,CAAC,iBAAiB,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3E,uEAAuE;IACvE,sEAAsE;IACtE,yEAAyE;IACzE,6DAA6D;IAC7D,IAAI,aAAa,IAAI,UAAU,CAAC,SAAS,KAAK,iBAAiB,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3E,MAAM,MAAM,GAAqB,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1E,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YACxB,iEAAiE;YACjE,gEAAgE;YAChE,iEAAiE;YACjE,+DAA+D;YAC/D,4DAA4D;YAC5D,MAAM,WAAW,GAAmB;gBAChC,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC;gBAC1B,IAAI,EAAE,WAAW;gBACjB,SAAS;gBACT,SAAS,EAAE,IAAI,CAAC,IAAI;gBACpB,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,IAAI,CAAC,IAAI;gBACrB,WAAW,EAAE,UAAW;gBACxB,eAAe,EAAE,cAAc;gBAC/B,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,uBAAuB;aACtC,CAAC;YACF,MAAM,IAAA,sBAAY,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAC7C,eAAM,CAAC,KAAK,CAAC,0BAA0B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAED,IAAA,qBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,WAAW,CAAC,UAAkB,EAAE,SAAiB,EAAE,KAAqB;IAC7E,qEAAqE;IACrE,wEAAwE;IACxE,IAAI,CAAC,IAAA,0BAAiB,EAAC,UAAU,CAAC,EAAE,CAAC;QACjC,OAAO;IACX,CAAC;IACD,MAAM,IAAI,GAA4B,EAAE,GAAG,KAAK,EAAE,CAAC;IACnD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC1B,IAAI,CAAC;QACD,IAAA,cAAM,EAAC,UAAU,EAAE,SAAS,EAAE,uBAAe,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QAClB,IAAI,CAAC,YAAY,wBAAgB,EAAE,CAAC;YAChC,eAAM,CAAC,KAAK,CAAC,0CAA0C,KAAK,CAAC,SAAS,YAAY,CAAC,CAAC;YACpF,OAAO;QACX,CAAC;QACD,eAAM,CAAC,KAAK,CAAC,kCAAkC,KAAK,CAAC,SAAS,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7G,CAAC;AACL,CAAC;AAED,mEAAmE;AACnE,SAAS,QAAQ,CAAC,KAAc;IAC5B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACxC,OAAO,CAAC,CAAC;IACb,CAAC;IACD,IAAI,CAAC;QACD,MAAM,CAAC,GAAW,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,CAAC,CAAC;IACb,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"track-action.js","sourceRoot":"","sources":["../../../../src/clients/cursor/hooks/track-action.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;;AAwIH,kBA0JC;AAhSD,yDAAuF;AACvF,qEAAuI;AACvI,gDAAwD;AACxD,gDAAyD;AACzD,gDAAmD;AACnD,8CAA+C;AAC/C,0CAA2E;AAC3E,kCAA+E;AAE/E,MAAM,sBAAsB,GAAW,gCAAgC,CAAC;AACxE,MAAM,UAAU,GAAW,yBAAyB,CAAC;AACrD,MAAM,gBAAgB,GAAW,MAAM,CAAC;AACxC,MAAM,qBAAqB,GAAW,MAAM,CAAC;AAC7C,MAAM,wBAAwB,GAAW,OAAO,CAAC;AACjD,MAAM,uBAAuB,GAAW,kBAAkB,CAAC;AAC3D,MAAM,oBAAoB,GAAW,eAAe,CAAC;AACrD,MAAM,uBAAuB,GAAW,kBAAkB,CAAC;AAC3D,qGAAqG;AACrG,MAAM,iBAAiB,GAAW,GAAG,gBAAgB,SAAS,CAAC;AAC/D,MAAM,oBAAoB,GAAW,GAAG,gBAAgB,yBAAyB,CAAC;AAClF,MAAM,mBAAmB,GAAW,GAAG,gBAAgB,wBAAwB,CAAC;AAEhF;;;;;;GAMG;AACH,SAAS,qBAAqB,CAAC,YAAoB;IAC/C,IAAI,YAAY,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,CAAC;QACpD,OAAO,uBAAuB,CAAC;IACnC,CAAC;IACD,IAAI,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC5C,OAAO,uBAAuB,CAAC;IACnC,CAAC;IACD,IAAI,YAAY,CAAC,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACjD,OAAO,oBAAoB,CAAC;IAChC,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAsBD;;;;;gCAKgC;AAChC,SAAS,4BAA4B,CAAC,IAAY;IAC9C,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,wEAAwE;AACxE,SAAS,qBAAqB,CAAC,GAAW,EAAE,UAAkB;IAC1D,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IACrB,CAAC;IACD,IAAI,KAAK,GAAW,CAAC,CAAC;IACtB,KAAK,IAAI,CAAC,GAAW,UAAU,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnD,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACjB,KAAK,EAAE,CAAC;QACZ,CAAC;aAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACxB,KAAK,EAAE,CAAC;YACR,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBACd,OAAO,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACxC,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED,SAAS,sBAAsB,CAAC,SAAkB;IAC9C,MAAM,QAAQ,GAAW,OAAO,SAAS,KAAK,QAAQ;QAClD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IAEtC,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,IAAI,GAAgB,IAAI,GAAG,EAAU,CAAC;IAC5C,IAAI,KAAK,GAA2B,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1E,OAAO,KAAK,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAW,4BAA4B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAEnB,IAAI,IAAI,GAAY,SAAS,CAAC;YAC9B,MAAM,SAAS,GAAW,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YACxD,MAAM,IAAI,GAAW,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;YAC3D,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,UAAU,GAAW,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;gBACrD,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC7B,MAAM,QAAQ,GAAuB,qBAAqB,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;oBAC1E,IAAI,QAAQ,EAAE,CAAC;wBACX,IAAI,CAAC;4BACD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;wBAChC,CAAC;wBAAC,MAAM,CAAC;4BACL,IAAI,GAAG,QAAQ,CAAC;wBACpB,CAAC;oBACL,CAAC;gBACL,CAAC;YACL,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,KAAK,GAAG,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AAEM,KAAK,UAAU,GAAG,CAAC,UAAkB;IACxC,IAAI,KAA6B,CAAC;IAClC,IAAI,CAAC;QACD,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAA,iBAAS,GAAE,CAA2B,CAAC;IAC9D,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QAClB,eAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;QAC5C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACX,CAAC;IAED,MAAM,SAAS,GAAW,KAAK,CAAC,eAAe,IAAI,SAAS,CAAC;IAC7D,MAAM,UAAU,GAAW,GAAG,UAAU,sBAAsB,SAAS,EAAE,CAAC;IAC1E,MAAM,WAAW,GAAW,GAAG,UAAU,gBAAgB,CAAC;IAC1D,IAAA,mBAAU,EAAC,GAAG,UAAU,cAAc,CAAC,CAAC;IAExC,MAAM,WAAW,GAAW,KAAK,CAAC,SAAS,IAAI,SAAS,CAAC;IACzD,MAAM,SAAS,GAAW,IAAI,CAAC,GAAG,EAAE,CAAC;IAErC,mDAAmD;IACnD,MAAM,iBAAiB,GAAY,CAAC,KAAK,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7H,CAAC,CAAC,EAAE,GAAI,KAAK,CAAC,UAAsC,EAAE,SAAS,EAAE,SAAS,EAAE;QAC5E,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;IAEvB,MAAM,UAAU,GAAuB,IAAA,mCAAmB,EAAC,UAAU,CAAC,CAAC;IACvE,MAAM,cAAc,GAAuB,IAAA,uCAAuB,EAAC,UAAU,CAAC,CAAC;IAC/E,MAAM,OAAO,GAAuB,IAAA,gCAAgB,EAAC,UAAU,CAAC,CAAC;IAEjE,gEAAgE;IAChE,wEAAwE;IACxE,uEAAuE;IACvE,mEAAmE;IACnE,+CAA+C;IAC/C,MAAM,UAAU,GAAmB,IAAA,mBAAY,EAAC,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAC/E,MAAM,aAAa,GAAY,UAAU,CAAC,SAAS,KAAK,KAAK,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACnH,MAAM,UAAU,GAAY,UAAU,CAAC,SAAS,KAAK,KAAK,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IACrH,MAAM,aAAa,GAAY,UAAU,CAAC,SAAS,KAAK,KAAK,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;IAC3H,MAAM,iBAAiB,GAAY,aAAa,IAAI,UAAU,IAAI,aAAa,CAAC;IAChF,MAAM,iBAAiB,GAAkB,UAAU,CAAC,SAAS,KAAK,KAAK;QACnE,CAAC,CAAC,CAAC,qBAAqB,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC;QACxE,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC;IAE5B,uEAAuE;IACvE,mEAAmE;IACnE,2BAA2B;IAC3B,wEAAwE;IACxE,2CAA2C;IAC3C,iEAAiE;IACjE,uEAAuE;IACvE,oEAAoE;IACpE,uCAAuC;IACvC,MAAM,iBAAiB,GAAY,iBAAiB;QAChD,CAAC,CAAC,iBAAiB;QACnB,CAAC,CAAC,IAAA,6BAAsB,EAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IAE7D,uEAAuE;IACvE,uEAAuE;IACvE,mEAAmE;IACnE,yCAAyC;IACzC,MAAM,QAAQ,GAAuB,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IACjJ,IAAI,QAA4B,CAAC;IACjC,IAAI,QAAQ,EAAE,CAAC;QACX,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC9B,CAAC;QACD,MAAM,MAAM,GAAW,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,QAAQ,GAAG,GAAG,MAAM,GAAG,QAAQ,EAAE,CAAC;IACtC,CAAC;IAED,qEAAqE;IACrE,wEAAwE;IACxE,oDAAoD;IACpD,MAAM,KAAK,GAAmB;QAC1B,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC;QAC1B,IAAI,EAAE,WAAW;QACjB,SAAS;QACT,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,SAAS,EAAE,UAAU,CAAC,SAAS;QAC/B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,UAAU,EAAE,iBAAiB;QAC7B,eAAe,EAAE,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC;QAC3C,uDAAuD;QACvD,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW;QACvD,kBAAkB,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;QACtE,WAAW,EAAE,UAAW;QACxB,eAAe,EAAE,cAAc;QAC/B,QAAQ,EAAE,OAAO;QACjB,mEAAmE;QACnE,iEAAiE;QACjE,+CAA+C;QAC/C,QAAQ,EAAE,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI;QACpE,UAAU,EAAE,iBAAiB;QAC7B,KAAK,EAAE,QAAQ;KAClB,CAAC;IAEF,IAAI,iBAAiB,EAAE,CAAC;QACpB,6DAA6D;QAC7D,mEAAmE;QACnE,oEAAoE;QACpE,iEAAiE;QACjE,MAAM,IAAA,sBAAY,EAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QAEvC,+DAA+D;QAC/D,+BAA+B;QAC/B,IAAI,aAAa,EAAE,CAAC;YAChB,IAAI,UAAU,CAAC,SAAS,KAAK,oBAAoB,EAAE,CAAC;gBAChD,IAAA,kCAAkB,EAAC,UAAU,EAAE,IAAI,CAAC,CAAC;gBACrC,eAAM,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YACpD,CAAC;iBAAM,IAAI,UAAU,CAAC,SAAS,KAAK,mBAAmB,EAAE,CAAC;gBACtD,IAAA,kCAAkB,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBACtC,eAAM,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;YACpD,CAAC;QACL,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,kEAAkE;QAClE,WAAW,CAAC,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC;IACD,eAAM,CAAC,KAAK,CAAC,iBAAiB,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3E,uEAAuE;IACvE,sEAAsE;IACtE,yEAAyE;IACzE,6DAA6D;IAC7D,IAAI,aAAa,IAAI,UAAU,CAAC,SAAS,KAAK,iBAAiB,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3E,MAAM,MAAM,GAAqB,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1E,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YACxB,iEAAiE;YACjE,gEAAgE;YAChE,iEAAiE;YACjE,+DAA+D;YAC/D,4DAA4D;YAC5D,MAAM,WAAW,GAAmB;gBAChC,GAAG,IAAA,oBAAU,EAAC,WAAW,CAAC;gBAC1B,IAAI,EAAE,WAAW;gBACjB,SAAS;gBACT,SAAS,EAAE,IAAI,CAAC,IAAI;gBACpB,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,IAAI,CAAC,IAAI;gBACrB,WAAW,EAAE,UAAW;gBACxB,eAAe,EAAE,cAAc;gBAC/B,QAAQ,EAAE,OAAO;gBACjB,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,uBAAuB;aACtC,CAAC;YACF,MAAM,IAAA,sBAAY,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAC7C,eAAM,CAAC,KAAK,CAAC,0BAA0B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAED,IAAA,qBAAY,EAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,WAAW,CAAC,UAAkB,EAAE,SAAiB,EAAE,KAAqB;IAC7E,qEAAqE;IACrE,wEAAwE;IACxE,IAAI,CAAC,IAAA,0BAAiB,EAAC,UAAU,CAAC,EAAE,CAAC;QACjC,OAAO;IACX,CAAC;IACD,MAAM,IAAI,GAA4B,EAAE,GAAG,KAAK,EAAE,CAAC;IACnD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC1B,IAAI,CAAC;QACD,IAAA,cAAM,EAAC,UAAU,EAAE,SAAS,EAAE,uBAAe,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QAClB,IAAI,CAAC,YAAY,wBAAgB,EAAE,CAAC;YAChC,eAAM,CAAC,KAAK,CAAC,0CAA0C,KAAK,CAAC,SAAS,YAAY,CAAC,CAAC;YACpF,OAAO;QACX,CAAC;QACD,eAAM,CAAC,KAAK,CAAC,kCAAkC,KAAK,CAAC,SAAS,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7G,CAAC;AACL,CAAC;AAED,mEAAmE;AACnE,SAAS,QAAQ,CAAC,KAAc;IAC5B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACxC,OAAO,CAAC,CAAC;IACb,CAAC;IACD,IAAI,CAAC;QACD,MAAM,CAAC,GAAW,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,CAAC,CAAC;IACb,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/clients/cursor/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAalC,OAAO,EAAwE,aAAa,EAAsC,MAAM,kBAAkB,CAAC;AA4E3J,qBAAa,YAAa,YAAW,OAAO;IACxC,SAAgB,IAAI,EAAE,MAAM,CAAY;IAEjC,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAInC,iBAAiB,IAAI,MAAM;IAI3B,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,IAAI;IAoEzD,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAO1C,OAAO,CAAC,gBAAgB;IAuBxB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAchB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,gBAAgB;IAyHxB,OAAO,CAAC,kBAAkB;IA4B1B,OAAO,CAAC,eAAe;IA4BvB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,cAAc;CAqBzB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/clients/cursor/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAalC,OAAO,EAAoG,aAAa,EAAsD,MAAM,kBAAkB,CAAC;AA6EvM,qBAAa,YAAa,YAAW,OAAO;IACxC,SAAgB,IAAI,EAAE,MAAM,CAAY;IAEjC,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAInC,iBAAiB,IAAI,MAAM;IAI3B,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,IAAI;IAoEzD,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAO1C,OAAO,CAAC,gBAAgB;IAuBxB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAchB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlD,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjD,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,gBAAgB;IAyHxB,OAAO,CAAC,kBAAkB;IA4B1B,OAAO,CAAC,eAAe;IAgCvB,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,cAAc;CA+CzB"}
@@ -16,13 +16,14 @@ const activity_start_1 = require("./hooks/activity-start");
16
16
  const activity_end_1 = require("./hooks/activity-end");
17
17
  const session_end_1 = require("./hooks/session-end");
18
18
  const config_1 = require("../../lib/config");
19
- const runtime_section_1 = require("../../lib/runtime-section");
19
+ const platform_section_1 = require("../../lib/platform-section");
20
20
  const MCP_SERVER_NAME = "browser-devtools";
21
21
  const NODE_MCP_SERVER_NAME = "node-devtools";
22
+ const BACKEND_MCP_SERVER_NAME = "backend-devtools";
22
23
  const IRONBEE_HOOK_MARKER = "ironbee";
23
- /** Resolve fragments dir for a given client at runtime. */
24
- function fragmentsDirFor(client) {
25
- return (0, path_1.join)(__dirname, "..", client, "fragments");
24
+ /** Resolve platforms dir for a given client at runtime. */
25
+ function platformsDirFor(client) {
26
+ return (0, path_1.join)(__dirname, "..", client, "platforms");
26
27
  }
27
28
  /**
28
29
  * True when the MCP config file no longer carries any user data — either
@@ -105,10 +106,10 @@ class CursorClient {
105
106
  (0, fs_1.writeFileSync)(analyzeSkillPath, analyzeContent);
106
107
  const mcpPath = (0, path_1.join)(cursorDir, "mcp.json");
107
108
  this.writeMcpConfig(mcpPath, projectDir);
108
- // Sync runtime marker blocks in skill/rule/command md files to the
109
+ // Sync platform marker blocks in skill/rule/command md files to the
109
110
  // current config state. Idempotent — runs the same logic that
110
- // `enable-backend` / `disable-backend` use, so installs match.
111
- (0, runtime_section_1.syncRuntimeSectionsToConfig)(projectDir, fragmentsDirFor);
111
+ // `enable-<platform>` / `disable-<platform>` use, so installs match.
112
+ (0, platform_section_1.syncPlatformSectionsToConfig)(projectDir, platformsDirFor);
112
113
  console.log(` ${output_1.pc.dim("→")} ${cursorColor("[cursor]")} hooks ${output_1.pc.dim("→")} ${output_1.pc.dim(hooksPath)}`);
113
114
  console.log(` ${output_1.pc.dim("→")} ${cursorColor("[cursor]")} skill ${output_1.pc.dim("→")} ${output_1.pc.dim(skillPath)}`);
114
115
  console.log(` ${output_1.pc.dim("→")} ${cursorColor("[cursor]")} rule ${output_1.pc.dim("→")} ${output_1.pc.dim(rulePath)}`);
@@ -253,7 +254,7 @@ class CursorClient {
253
254
  }
254
255
  config.hooks.preToolUse.push({
255
256
  command: `ironbee hook require-verification --client cursor`,
256
- matcher: "MCP:(bdt|ndt)_.*",
257
+ matcher: "MCP:(bdt|ndt|bedt)_.*",
257
258
  failClosed: true,
258
259
  });
259
260
  // ── preToolUse (enforcement) — block edits without verdict ──
@@ -353,6 +354,10 @@ class CursorClient {
353
354
  delete config.mcpServers[NODE_MCP_SERVER_NAME];
354
355
  changed = true;
355
356
  }
357
+ if (config.mcpServers && config.mcpServers[BACKEND_MCP_SERVER_NAME]) {
358
+ delete config.mcpServers[BACKEND_MCP_SERVER_NAME];
359
+ changed = true;
360
+ }
356
361
  // Empty-file cleanup runs regardless of `changed` — a file
357
362
  // already empty from a prior half-cleanup gets removed too.
358
363
  if (isMcpConfigEmpty(config)) {
@@ -385,9 +390,38 @@ class CursorClient {
385
390
  config = { mcpServers: {} };
386
391
  }
387
392
  }
388
- const mcpEntry = (0, config_1.getMcpServerEntry)(projectDir);
389
- config.mcpServers[MCP_SERVER_NAME] = mcpEntry;
390
- config.mcpServers[NODE_MCP_SERVER_NAME] = (0, config_1.getNodeDevToolsMcpEntry)(projectDir);
393
+ // Per-cycle gating: MCP entries are only registered for currently
394
+ // enabled cycles. `<cycle> disable` removes the entry; `<cycle> enable`
395
+ // (re)writes it. Idempotent running install twice on the same
396
+ // config yields the same on-disk shape.
397
+ const ironbeeConfig = (0, config_1.loadConfig)(projectDir);
398
+ if ((0, config_1.isCycleEnabled)(ironbeeConfig, "browser")) {
399
+ config.mcpServers[MCP_SERVER_NAME] = (0, config_1.getMcpServerEntry)(projectDir);
400
+ }
401
+ else {
402
+ delete config.mcpServers[MCP_SERVER_NAME];
403
+ }
404
+ if ((0, config_1.isCycleEnabled)(ironbeeConfig, "node")) {
405
+ config.mcpServers[NODE_MCP_SERVER_NAME] = (0, config_1.getNodeDevToolsMcpEntry)(projectDir);
406
+ }
407
+ else {
408
+ delete config.mcpServers[NODE_MCP_SERVER_NAME];
409
+ }
410
+ if ((0, config_1.isCycleEnabled)(ironbeeConfig, "backend")) {
411
+ config.mcpServers[BACKEND_MCP_SERVER_NAME] = (0, config_1.getBackendDevToolsMcpEntry)(projectDir);
412
+ }
413
+ else {
414
+ delete config.mcpServers[BACKEND_MCP_SERVER_NAME];
415
+ }
416
+ if (isMcpConfigEmpty(config)) {
417
+ try {
418
+ (0, fs_1.rmSync)(mcpPath, { force: true });
419
+ }
420
+ catch (e) {
421
+ logger_1.logger.debug(`failed to remove empty ${mcpPath}: ${e}`);
422
+ }
423
+ return;
424
+ }
391
425
  (0, fs_1.writeFileSync)(mcpPath, JSON.stringify(config, null, 2));
392
426
  }
393
427
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/clients/cursor/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/clients/cursor/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ <!-- Backend protocol verification is ENABLED for this project. -->
2
+
3
+ ## Backend Mode (when `backend.verifyPatterns` matches an edited file)
4
+
5
+ If the project has the backend protocol cycle enabled (`ironbee backend enable` once at setup) and your edits touch matching paths (e.g. `server/**`, `api/**`, `routes/**`, `controllers/**`), the Stop hook also enforces a Backend cycle. The same `verification-start` covers every active cycle; the same verdict file carries fields for all of them.
6
+
7
+ This cycle is **runtime- and language-agnostic** — it works for Node, Java, Python, Go, Rust, Ruby, .NET, PHP, Elixir, Kotlin, Scala. The agent makes real protocol calls (HTTP / gRPC / GraphQL / WebSocket) against the running service and inspects the responses; it never attaches to a process.
8
+
9
+ ### Mode behavior (backend cycle)
10
+ - **default** (no arg or `default`): call only the endpoints your diff touched. Map each changed file → the route(s) / handler(s) / RPC method(s) it exposes → call them, then chain enough follow-up calls to verify side effects.
11
+ - **full**: exercise every endpoint reachable from files matching `backend.verifyPatterns`, not just the changed files. Cover the success path, at least one error path, and any auth-gated variant for each.
12
+ - `visual` / `functional`: browser-only modes; this cycle behaves as `default` when they are passed.
13
+
14
+ ### Steps (additive to the browser flow above)
15
+ 1. **Confirm the backend service is running** (the user's dev server / Docker compose / k8s port-forward / …). Don't start the service yourself — ask the user if it's not obvious.
16
+ 2. **Identify the affected endpoint(s)**. Map your code change to wire-level addresses (URL, gRPC service+method, GraphQL operation, WebSocket path).
17
+ 3. **Make a real protocol call** with the matching tool:
18
+ - `MCP:bedt_request_http` — HTTP/1.1 + HTTP/2 (ALPN auto-negotiates).
19
+ - `MCP:bedt_request_grpc` — unary + 3 streaming modes; `.proto` text or descriptor.
20
+ - `MCP:bedt_request_graphql` — query/mutation/persisted query.
21
+ - `MCP:bedt_request_websocket-open` then `bedt_request_websocket-send` / `bedt_request_websocket-receive` / `bedt_request_websocket-close` for stateful WS sessions.
22
+ - `MCP:bedt_request_replay` — re-issue a captured curl command or HAR entry.
23
+ 4. **Inspect the response** — `status`, body, headers, `traceId`. **4xx/5xx and gRPC non-OK are normal results, not transport errors.** Decide PASS/FAIL based on what the test actually requires.
24
+ 5. **Chain follow-up calls** to verify side effects (POST then GET, set then list, etc.). Use `bedt_request_set-default-headers` for auth tokens (host-scoped), `bedt_request_set-cookies` for session state.
25
+ 6. **Submit verdict** including `backend_*` fields. If browser and/or node cycles are also active, include their fields in the SAME verdict — do not submit two verdicts.
26
+
27
+ ### Verdict (backend-cycle fields)
28
+ ```json
29
+ {
30
+ "session_id": "...",
31
+ "status": "pass",
32
+ "checks": ["POST /api/orders returned 201 with order id", "GET /api/orders/:id reflects new order"],
33
+ "backend_endpoints_called": [
34
+ "POST http://localhost:3000/api/orders",
35
+ "GET http://localhost:3000/api/orders/42"
36
+ ],
37
+ "backend_response_statuses": [201, 200],
38
+ "backend_traces_collected": ["00-1234abcd-...01"]
39
+ }
40
+ ```
41
+
42
+ `backend_endpoints_called` is the only required field for this cycle. `backend_response_statuses` and `backend_traces_collected` are optional but strongly recommended — same order as `backend_endpoints_called`. There is no automatic pass-criteria override on this cycle: if `status: pass` and the evidence is structurally valid, the gate honors it.
43
+
44
+ For a multi-cycle pass (browser + backend, or browser + node + backend), every active cycle's evidence must be present — claiming `pass` without one cycle's fields will be overridden to fail.
45
+
46
+ ---
47
+
48
+ ## Default Mode (backend cycle)
49
+
50
+ Focus on the endpoints you changed — not every endpoint in the service.
51
+
52
+ ### 1. Study the changes
53
+ 1. Run `git diff --name-only` and `git diff --name-only HEAD~1`
54
+ 2. **Ignore `.ironbee/`, `.claude/`, `.cursor/`** — tool config, not application code
55
+ 3. **Read the full diff** for route / handler / controller / service files in scope — note the wire-level address (HTTP method+path, gRPC service+method, GraphQL operation, WebSocket path), request shape, response shape, side effects (DB writes, downstream calls, queue puts)
56
+ 4. Before opening the request tool, you should be able to answer: what endpoints did I touch? What does each return on the happy path? What does each return on the error path? What side effects need verification?
57
+
58
+ ### 2. Verify against the running service
59
+ - **Call each changed endpoint** with the matching tool — `MCP:bedt_request_http` / `MCP:bedt_request_grpc` / `MCP:bedt_request_graphql` / `MCP:bedt_request_websocket-open`
60
+ - **Cross-reference the response against the diff** — status, body shape, headers, gRPC status code
61
+ - **Chain a follow-up call** to verify side effects (POST then GET, set then list, mutation then query, …)
62
+ - **Test one error path** per new branch — invalid body, missing field, missing auth, 404 path
63
+ - **Capture `traceId`** when available — useful for joining with downstream cycle evidence
64
+
65
+ ---
66
+
67
+ ## Full Mode (`/ironbee-verify full`, backend cycle)
68
+
69
+ Exercise every endpoint reachable from files matching `backend.verifyPatterns`, not just the changed files. Do NOT run `git diff` or scope to recent changes.
70
+
71
+ - Hit every route / RPC method / GraphQL operation / WebSocket lifecycle in scope
72
+ - Cover the success path AND at least one error path for each
73
+ - Cover any auth-gated variant (unauthenticated, wrong role) where authentication is present
74
+ - Any unexpected error response during the run is a fail, regardless of when it was introduced
@@ -0,0 +1,108 @@
1
+ <!-- Browser cycle verification is ENABLED for this project. The stop hook
2
+ enforces a browser cycle whenever an edited file matches
3
+ `browser.verifyPatterns`. The `/ironbee-verify` command's mode
4
+ arguments (default / full / visual / functional) tune the depth of the
5
+ browser-cycle pass. -->
6
+
7
+ ## Mode arguments (browser cycle)
8
+
9
+ - `/ironbee-verify` — **default** — focus on what changed, visual + functional checks on affected areas
10
+ - `/ironbee-verify full` — **full scope** — entire application, all checklists, edge cases, responsive, accessibility deep dive
11
+ - `/ironbee-verify visual` — **visual only** — contrast, layout, spacing, fonts, images, theming
12
+ - `/ironbee-verify functional` — **functional only** — clicks, forms, navigation, data flow, error handling
13
+
14
+ If no argument is given, use **default** mode. `default` and `full` apply to every active cycle (browser, node, backend) — each cycle interprets them in its own terms (see each platform section). `visual` and `functional` apply ONLY to the browser cycle; other active cycles run in `default` mode when these are passed.
15
+
16
+ ## Browser steps (all modes)
17
+
18
+ 1. **Start verification**: Run `echo '{"session_id":"<your-session-id>"}' | ironbee hook verification-start` via terminal
19
+ 2. **Build and start** the application if not already running
20
+ 3. **For EVERY page you visit**, repeat this cycle:
21
+ a. **Navigate** using `MCP:bdt_navigation_go-to`
22
+ b. **Take a FULL PAGE screenshot** using `MCP:bdt_content_take-screenshot` with `fullPage: true`
23
+ c. **Take an ARIA snapshot** using `MCP:bdt_a11y_take-aria-snapshot`
24
+ d. **STOP and visually analyze the screenshot** — switch your focus entirely to finding visual problems. Look at this screenshot as if your ONLY job is to find visual defects:
25
+ **WARNING: ARIA reports DOM content, not what the user actually sees.** Do NOT assume the page looks correct just because ARIA shows the right content. Only the screenshot tells you what the user actually sees.
26
+ - Text readability — is it readable against its background? Look for text that blends in or poor contrast
27
+ - Layout — overlapping elements, unexpected gaps, overflow, content cut off
28
+ - Spacing — consistent padding/margin? Too cramped or too far apart?
29
+ - Colors — intentional and consistent? Any jarring mismatches?
30
+ - Typography — right sizes? Clipped or truncated text?
31
+ - Images/icons — loaded? Right size and aspect ratio?
32
+ - States — empty, loading, disabled, error states rendered properly?
33
+ Report your visual findings before continuing.
34
+ e. **Read the ARIA snapshot** — verify headings, labels, landmarks, and structure
35
+ f. If anything looks wrong → note it as an issue
36
+ 4. **Functionally test** — run the checklist for your mode (see below). After each significant interaction, take another screenshot and repeat the visual analysis.
37
+ 5. **Check console** for errors using `MCP:bdt_o11y_get-console-messages`
38
+ 6. **Stop** the dev server when verification is complete
39
+ 7. **If recording was started, stop it now** — `MCP:bdt_content_stop-recording`. submit-verdict rejects with `"recording is still active"` when this step is skipped. (Recording is a server-side opt-in via `recording.enable` — when on, the gate forces `MCP:bdt_content_start-recording` BEFORE the steps above and demands the matching stop here.)
40
+ 8. **Submit your verdict** via terminal:
41
+ - Pass: `echo '{"session_id":"...","status":"pass","pages_tested":[...],"checks":[...],"console_errors":0,"network_failures":0}' | ironbee hook submit-verdict`
42
+ - Fail: `echo '{"session_id":"...","status":"fail","pages_tested":[...],"checks":[...],"console_errors":N,"network_failures":N,"issues":["describe what failed"]}' | ironbee hook submit-verdict`
43
+ 9. **If failed** → collect ALL issues first (finish testing all affected pages), submit one fail verdict with all issues, then fix everything, rebuild, and re-verify. Do not fix one issue at a time — batch fixes to avoid repeated build/restart cycles.
44
+ 10. If pass after a previous fail, include `"fixes"` in the verdict describing what was fixed
45
+
46
+ ---
47
+
48
+ ## Default Mode
49
+
50
+ Focus on the code you changed — not the entire application.
51
+
52
+ ### 1. Study the changes
53
+ 1. Run `git diff --name-only` and `git diff --name-only HEAD~1`
54
+ 2. **Ignore `.ironbee/`, `.claude/`, `.cursor/`** — tool config, not application code
55
+ 3. **Read the full diff** (`git diff` and/or `git diff HEAD~1`) — understand every change: what was added, removed, modified. Note specific values (colors, sizes, conditions, logic, API endpoints, component props).
56
+ 4. Before opening the browser, you should be able to answer: what exactly changed, what should look or behave differently, and what could go wrong?
57
+
58
+ ### 2. Verify in the browser
59
+ - **Cross-reference the diff against what you see.** For each change in the diff, verify it is correctly reflected in the browser. If the diff changes a color → check that color. If it changes a calculation → verify the result. If it adds a component → confirm it renders.
60
+ - **Test the flow end-to-end** — navigate, click, fill forms, submit, verify the outcome
61
+ - **Check one edge case** — empty input, invalid data, or double-click
62
+ - **Console** — any new errors or warnings?
63
+
64
+ ---
65
+
66
+ ## Full Mode (`/ironbee-verify full`)
67
+
68
+ Comprehensive verification of the **entire application**. Do NOT run `git diff` or scope to recent changes. Test every page, every flow, every visual detail. Any issue is a failure, regardless of when it was introduced.
69
+
70
+ ### Visual Checklist
71
+ In addition to the per-page visual analysis in step 3d:
72
+ - **Responsiveness** — does the layout adapt if viewport changes? No horizontal scrolling on standard widths
73
+ - **Borders & separators** — visible and consistent? Not too faint or missing
74
+ - **Scroll behavior** — does the page scroll smoothly? No content hidden behind sticky headers/footers?
75
+
76
+ ### Functional Checklist
77
+ - **Navigation** — do links and buttons navigate to the correct pages?
78
+ - **Forms** — fill inputs with real data, select options, submit. Do validation messages appear correctly?
79
+ - **Buttons & interactions** — do click handlers fire? Do toggles, dropdowns, and modals work?
80
+ - **Data flow** — does submitted data appear where expected?
81
+ - **Error handling** — what happens with invalid input? Does the UI handle errors gracefully?
82
+ - **Authentication** — if applicable, do protected routes redirect correctly?
83
+ - **API calls** — do network requests succeed? Check for failed requests in console/network
84
+ - **State persistence** — does state survive page refresh where expected?
85
+ - **Edge cases** — empty inputs, very long text, special characters, rapid clicks
86
+
87
+ ### Accessibility (deep dive)
88
+ - Are headings hierarchical? Do form inputs have labels? Are landmarks present?
89
+ - Check for missing alt text on images
90
+
91
+ ---
92
+
93
+ ## Visual Mode (`/ironbee-verify visual`)
94
+
95
+ Focus exclusively on visual quality. Run the per-page visual analysis from step 3d on every page, plus:
96
+ - **Responsiveness** — viewport changes, no horizontal scrolling
97
+ - **Borders & separators** — visible and consistent?
98
+ - **Scroll behavior** — smooth scrolling, no hidden content
99
+
100
+ Take screenshots of **multiple states** if applicable (hover, active, disabled, empty, populated).
101
+
102
+ ---
103
+
104
+ ## Functional Mode (`/ironbee-verify functional`)
105
+
106
+ Focus exclusively on behavior. Use the same functional checklist as Full Mode above.
107
+
108
+ Test the **complete user flow**, not just the single step you changed.