@mcp-abap-adt/adt-clients 28.0.0 → 29.1.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/README.md CHANGED
@@ -91,7 +91,7 @@ This package interacts with external packages **ONLY through interfaces**:
91
91
 
92
92
  | package | what this package takes from it |
93
93
  |---|---|
94
- | [`@mcp-abap-adt/interfaces-adt`](https://www.npmjs.com/package/@mcp-abap-adt/interfaces-adt) `^14.0.0` | the capability atoms, every object's config, `IAdtResponse`, `IAnalyse`, `IAdtAnalyseOptions`, `IResultStrategy`, `ADT_NO_FAILURE`, `ADT_TASK_TYPE` |
94
+ | [`@mcp-abap-adt/interfaces-adt`](https://www.npmjs.com/package/@mcp-abap-adt/interfaces-adt) `^15.0.0` | the capability atoms, every object's config, `IAdtResponse`, `IAnalyse`, `IAdtAnalyseOptions`, `IResultStrategy`, `ADT_NO_FAILURE`, `ADT_TASK_TYPE` |
95
95
  | [`@mcp-abap-adt/interfaces-adt-connection`](https://www.npmjs.com/package/@mcp-abap-adt/interfaces-adt-connection) `^2.0.0` | `IAbapConnection`, `IAdtWireResponse`, `IAbapRequestOptions`, `ITimeoutConfig`, the connection capability atoms, `ADT_SESSION_ERROR` |
96
96
  | [`@mcp-abap-adt/interfaces-network`](https://www.npmjs.com/package/@mcp-abap-adt/interfaces-network) `^2.0.0` | `IWebSocketTransport` and its four companions, `HttpError` |
97
97
  | [`@mcp-abap-adt/interfaces-utils`](https://www.npmjs.com/package/@mcp-abap-adt/interfaces-utils) `^1.1.0` | `ILogger`, `LogLevel`, `XmlNode` |
@@ -162,7 +162,7 @@ npm install @mcp-abap-adt/adt-clients
162
162
 
163
163
  6. **AbapDebugger, AmdpDebugger, MemorySnapshots**
164
164
  - Standalone, from `@mcp-abap-adt/adt-clients/runtime` or the root: `new AbapDebugger(connection, logger, results?, { onConflict? })`
165
- - One member per request, contracts `IAbapDebugger`, `IAmdpDebugger`, `IMemorySnapshots` from `@mcp-abap-adt/interfaces-adt` (contract 14 pairs with clients 28)
165
+ - One member per request, contracts `IAbapDebugger`, `IAmdpDebugger`, `IMemorySnapshots` from `@mcp-abap-adt/interfaces-adt` (contract 15 pairs with clients 29)
166
166
  - **The identity states its mode.** `{ debuggingMode: 'user', requestUser, terminalId, ideId }`, or `{ debuggingMode: 'terminal', terminalId, ideId }`; `attach` takes the identity, not the user. A catch in terminal mode is unmeasured
167
167
  - **Breakpoints are replaced, not added to.** `setBreakpoints` and `syncBreakpoints` replace the identity's set, and `stopListener` deletes it: arm the whole set in one call
168
168
  - **Two sessions.** The ABAP listener holds one stateful connection; each debuggee caught is attached on a new one, routed to its application server. The AMDP debugger answers events on one session and takes commands on another
@@ -857,7 +857,7 @@ everything else is not.
857
857
 
858
858
  ### Single Definition Site: the contract packages
859
859
 
860
- Since **7.5.0**, every contract type is **defined once**, in the contract packages — today `@mcp-abap-adt/interfaces-adt` (`^14.0.0`) for the ADT contracts and `@mcp-abap-adt/interfaces-adt-connection` (`^2.0.0`) for the connection. This package declares no copies of its own — every `IXxxConfig`, the capability atoms, the option and response types and the cross-cutting shared types all live there.
860
+ Since **7.5.0**, every contract type is **defined once**, in the contract packages — today `@mcp-abap-adt/interfaces-adt` (`^15.0.0`) for the ADT contracts and `@mcp-abap-adt/interfaces-adt-connection` (`^2.0.0`) for the connection. This package declares no copies of its own — every `IXxxConfig`, the capability atoms, the option and response types and the cross-cutting shared types all live there.
861
861
 
862
862
  **Import them from the package that owns them:**
863
863
 
@@ -937,7 +937,7 @@ contracts (`IAbapDebugger`, `IAmdpDebugger`, `IMemorySnapshots`, 13.1.0). This
937
937
  package no longer declares or exports any contract type — every contract name it uses is
938
938
  sourced from the contract packages.
939
939
 
940
- > **Version pairing.** `adt-clients` 28 pairs with `interfaces-adt` 14 (the debugger identity by mode, `TSettings`), and `adt-strategies` 0.9.0 declares the same range. Because the types are sourced rather than copied, `@mcp-abap-adt/interfaces-adt` and `@mcp-abap-adt/interfaces-adt-connection` are hard peers of this package's public API. A major bump there implies a bump here; keep the two in step rather than letting a resolver pick a mismatched pair.
940
+ > **Version pairing.** `adt-clients` 29 pairs with `interfaces-adt` 15 (breakpoints lose `skipCount` and gain `clientId`), and `adt-strategies` 0.10.0 declares the same range. Because the types are sourced rather than copied, `@mcp-abap-adt/interfaces-adt` and `@mcp-abap-adt/interfaces-adt-connection` are hard peers of this package's public API. A major bump there implies a bump here; keep the two in step rather than letting a resolver pick a mismatched pair.
941
941
 
942
942
  ### Naming Conventions
943
943
 
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Class run operations - execute ABAP classes that implement if_oo_adt_classrun
3
3
  */
4
+ import type { IDebuggeeIds } from '@mcp-abap-adt/interfaces-adt';
4
5
  import type { IAbapConnection, IAdtWireResponse } from '@mcp-abap-adt/interfaces-adt-connection';
5
6
  /**
6
7
  * Run an ABAP class that implements if_oo_adt_classrun interface.
@@ -45,7 +46,7 @@ import type { IAbapConnection, IAdtWireResponse } from '@mcp-abap-adt/interfaces
45
46
  * }
46
47
  * ```
47
48
  */
48
- export declare function runClass(connection: IAbapConnection, className: string, runnable?: boolean, _sessionId?: string): Promise<IAdtWireResponse>;
49
+ export declare function runClass(connection: IAbapConnection, className: string, runnable?: boolean, _sessionId?: string, debuggee?: IDebuggeeIds): Promise<IAdtWireResponse>;
49
50
  export type { IClassUnitTestDefinition, IClassUnitTestRunOptions, } from '@mcp-abap-adt/interfaces-adt';
50
51
  import type { IClassUnitTestDefinition, IClassUnitTestRunOptions } from '@mcp-abap-adt/interfaces-adt';
51
52
  import { getUnitTestRunResult, getUnitTestRunStatus } from '../shared/abapUnit';
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/core/class/run.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AAIjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAsB,QAAQ,CAC5B,UAAU,EAAE,eAAe,EAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,OAAc,EACxB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,CAAC,CAmB3B;AAOD,YAAY,EACV,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AAMtC,OAAO,KAAK,EACV,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EAErB,MAAM,oBAAoB,CAAC;AAE5B,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,wBAAwB,EAAE,EACjC,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,gBAAgB,CAAC,CA6C3B;AAED,mFAAmF;AACnF,eAAO,MAAM,sBAAsB,6BAAuB,CAAC;AAE3D,qEAAqE;AACrE,eAAO,MAAM,sBAAsB,6BAAuB,CAAC;AAE3D;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,eAAe,EAC3B,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,gBAAgB,CAAC,CAM3B"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/core/class/run.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AAKjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,wBAAsB,QAAQ,CAC5B,UAAU,EAAE,eAAe,EAC3B,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,OAAc,EACxB,UAAU,CAAC,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,YAAY,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAoB3B;AAOD,YAAY,EACV,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,8BAA8B,CAAC;AAMtC,OAAO,KAAK,EACV,wBAAwB,EACxB,wBAAwB,EACzB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EAErB,MAAM,oBAAoB,CAAC;AAE5B,wBAAsB,qBAAqB,CACzC,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,wBAAwB,EAAE,EACjC,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,gBAAgB,CAAC,CA6C3B;AAED,mFAAmF;AACnF,eAAO,MAAM,sBAAsB,6BAAuB,CAAC;AAE3D,qEAAqE;AACrE,eAAO,MAAM,sBAAsB,6BAAuB,CAAC;AAE3D;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,UAAU,EAAE,eAAe,EAC3B,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,gBAAgB,CAAC,CAM3B"}
@@ -7,6 +7,7 @@ exports.getClassUnitTestResult = exports.getClassUnitTestStatus = void 0;
7
7
  exports.runClass = runClass;
8
8
  exports.startClassUnitTestRun = startClassUnitTestRun;
9
9
  exports.startClassUnitTestRunByObject = startClassUnitTestRunByObject;
10
+ const passport_1 = require("../../runtime/debugger/passport");
10
11
  const timeouts_1 = require("../../utils/timeouts");
11
12
  const xml_1 = require("../../utils/xml");
12
13
  /**
@@ -52,13 +53,14 @@ const xml_1 = require("../../utils/xml");
52
53
  * }
53
54
  * ```
54
55
  */
55
- async function runClass(connection, className, runnable = true, _sessionId) {
56
+ async function runClass(connection, className, runnable = true, _sessionId, debuggee) {
56
57
  if (!runnable) {
57
58
  throw new Error(`Class ${className} is not marked as runnable (does not implement if_oo_adt_classrun)`);
58
59
  }
59
60
  const url = `/sap/bc/adt/oo/classrun/${className}`;
60
61
  const headers = {
61
62
  Accept: contentTypes_1.ACCEPT_SOURCE,
63
+ ...(debuggee && { 'SAP-PASSPORT': (0, passport_1.debuggeePassport)(debuggee) }),
62
64
  };
63
65
  return connection.makeAdtRequest({
64
66
  url,
@@ -1,11 +1,12 @@
1
1
  /**
2
2
  * Program run operations - execute ABAP executable programs
3
3
  */
4
+ import type { IDebuggeeIds } from '@mcp-abap-adt/interfaces-adt';
4
5
  import type { IAbapConnection, IAdtWireResponse } from '@mcp-abap-adt/interfaces-adt-connection';
5
6
  /**
6
7
  * Run an ABAP executable program.
7
8
  *
8
9
  * Endpoint: POST /sap/bc/adt/programs/programrun/{programName}
9
10
  */
10
- export declare function runProgram(connection: IAbapConnection, programName: string, _sessionId?: string): Promise<IAdtWireResponse>;
11
+ export declare function runProgram(connection: IAbapConnection, programName: string, _sessionId?: string, debuggee?: IDebuggeeIds): Promise<IAdtWireResponse>;
11
12
  //# sourceMappingURL=run.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/core/program/run.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AAKjD;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,UAAU,EAAE,eAAe,EAC3B,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,CAAC,CAY3B"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/core/program/run.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AAMjD;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,UAAU,EAAE,eAAe,EAC3B,WAAW,EAAE,MAAM,EACnB,UAAU,CAAC,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,YAAY,GACtB,OAAO,CAAC,gBAAgB,CAAC,CAa3B"}
@@ -5,6 +5,7 @@
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.runProgram = runProgram;
7
7
  const contentTypes_1 = require("../../constants/contentTypes");
8
+ const passport_1 = require("../../runtime/debugger/passport");
8
9
  const internalUtils_1 = require("../../utils/internalUtils");
9
10
  const timeouts_1 = require("../../utils/timeouts");
10
11
  /**
@@ -12,7 +13,7 @@ const timeouts_1 = require("../../utils/timeouts");
12
13
  *
13
14
  * Endpoint: POST /sap/bc/adt/programs/programrun/{programName}
14
15
  */
15
- async function runProgram(connection, programName, _sessionId) {
16
+ async function runProgram(connection, programName, _sessionId, debuggee) {
16
17
  const normalizedName = (0, internalUtils_1.encodeSapObjectName)(programName).toUpperCase();
17
18
  return connection.makeAdtRequest({
18
19
  url: `/sap/bc/adt/programs/programrun/${normalizedName}`,
@@ -21,6 +22,7 @@ async function runProgram(connection, programName, _sessionId) {
21
22
  headers: {
22
23
  Accept: contentTypes_1.ACCEPT_SOURCE,
23
24
  'X-sap-adt-profiling': 'server-time',
25
+ ...(debuggee && { 'SAP-PASSPORT': (0, passport_1.debuggeePassport)(debuggee) }),
24
26
  },
25
27
  });
26
28
  }
@@ -1,4 +1,4 @@
1
- import type { IAdtAnalyseOptions, IAdtError, IAdtResponse, IAdtRunnable, IClassExecuteWithProfilerOptions, IClassExecutionTarget, IProfilerTraceParameters, IResultStrategy, IRunnableWithProfiler, ITraceScheduling } from '@mcp-abap-adt/interfaces-adt';
1
+ import type { IAdtAnalyseOptions, IAdtError, IAdtResponse, IAdtRunnable, IClassExecuteOptions, IClassExecuteWithProfilerOptions, IClassExecutionTarget, IProfilerTraceParameters, IResultStrategy, IRunnableWithProfiler, ITraceScheduling } from '@mcp-abap-adt/interfaces-adt';
2
2
  import type { IAbapConnection } from '@mcp-abap-adt/interfaces-adt-connection';
3
3
  import type { ILogger } from '@mcp-abap-adt/interfaces-utils';
4
4
  import { type ITraceSchedulingResults } from '../traceScheduling';
@@ -41,7 +41,7 @@ export declare class ClassExecutor<R extends IClassExecutorResults = typeof clas
41
41
  listRequests<E extends IAdtError = IAdtError>(options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['requests']>, E>>;
42
42
  getRequestsByUri<E extends IAdtError = IAdtError>(uri: string, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['requests']>, E>>;
43
43
  scheduleTrace<E extends IAdtError = IAdtError>(options?: IProfilerTraceParameters & IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['scheduled']>, E>>;
44
- run<E extends IAdtError = IAdtError>(target: IClassExecutionTarget, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['run']>, E>>;
44
+ run<E extends IAdtError = IAdtError>(target: IClassExecutionTarget, options?: IClassExecuteOptions & IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['run']>, E>>;
45
45
  runWithProfiler<E extends IAdtError = IAdtError>(target: IClassExecutionTarget, options: IClassExecuteWithProfilerOptions & IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['run']>, E>>;
46
46
  }
47
47
  //# sourceMappingURL=ClassExecutor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClassExecutor.d.ts","sourceRoot":"","sources":["../../../src/executors/class/ClassExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,gCAAgC,EAChC,qBAAqB,EACrB,wBAAwB,EACxB,eAAe,EACf,qBAAqB,EACrB,gBAAgB,EACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAK9D,OAAO,EACL,KAAK,uBAAuB,EAG7B,MAAM,oBAAoB,CAAC;AAE5B;;;GAGG;AACH,MAAM,WAAW,qBAAsB,SAAQ,uBAAuB;IACpE,4EAA4E;IAC5E,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;CACxC;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;CAGF,CAAC;AAElC;;;;;;;;GAQG;AACH,qBAAa,aAAa,CACxB,CAAC,SAAS,qBAAqB,GAAG,OAAO,sBAAsB,CAC/D,YACE,YAAY,CAAC,qBAAqB,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EACzD,qBAAqB,CACnB,qBAAqB,EACrB,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EACpB,gCAAgC,CACjC,EACD,gBAAgB,CACd,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EACtB,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EACzB,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAC3B;IAEH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAkB;IAC7C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAI;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;gBAG9C,UAAU,EAAE,eAAe,EAC3B,MAAM,CAAC,EAAE,OAAO,EAEhB,OAAO,GAAE,CAA0C;IAYrD,eAAe,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAC7C,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAInD,gBAAgB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAC9C,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAInD,YAAY,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAC1C,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAItD,gBAAgB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAC9C,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAItD,aAAa,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EAC3C,OAAO,CAAC,EAAE,wBAAwB,GAAG,kBAAkB,CAAC,CAAC,CAAC,GACzD,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAIjD,GAAG,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EACvC,MAAM,EAAE,qBAAqB,EAC7B,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAQ3C,eAAe,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EACnD,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,gCAAgC,GAAG,kBAAkB,CAAC,CAAC,CAAC,GAChE,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAiBlD"}
1
+ {"version":3,"file":"ClassExecutor.d.ts","sourceRoot":"","sources":["../../../src/executors/class/ClassExecutor.ts"],"names":[],"mappings":"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"}
@@ -56,7 +56,7 @@ class ClassExecutor {
56
56
  return this.scheduling.scheduleTrace(options);
57
57
  }
58
58
  async run(target, options) {
59
- return (0, adtResponse_1.answering)(() => (0, run_1.runClass)(this.connection, target.className, true), this.results.run, options?.analyse);
59
+ return (0, adtResponse_1.answering)(() => (0, run_1.runClass)(this.connection, target.className, true, undefined, options?.debuggee), this.results.run, options?.analyse);
60
60
  }
61
61
  async runWithProfiler(target, options) {
62
62
  const encodedProfilerId = encodeURIComponent(options.profilerId);
@@ -1,4 +1,4 @@
1
- import type { IAdtAnalyseOptions, IAdtError, IAdtResponse, IAdtRunnable, IProfilerTraceParameters, IProgramExecuteWithProfilerOptions, IProgramExecutionTarget, IResultStrategy, IRunnableWithProfiler, ITraceScheduling } from '@mcp-abap-adt/interfaces-adt';
1
+ import type { IAdtAnalyseOptions, IAdtError, IAdtResponse, IAdtRunnable, IProfilerTraceParameters, IProgramExecuteOptions, IProgramExecuteWithProfilerOptions, IProgramExecutionTarget, IResultStrategy, IRunnableWithProfiler, ITraceScheduling } from '@mcp-abap-adt/interfaces-adt';
2
2
  import type { IAbapConnection } from '@mcp-abap-adt/interfaces-adt-connection';
3
3
  import type { ILogger } from '@mcp-abap-adt/interfaces-utils';
4
4
  import { type ITraceSchedulingResults } from '../traceScheduling';
@@ -40,7 +40,7 @@ export declare class ProgramExecutor<R extends IProgramExecutorResults = typeof
40
40
  listRequests<E extends IAdtError = IAdtError>(options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['requests']>, E>>;
41
41
  getRequestsByUri<E extends IAdtError = IAdtError>(uri: string, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['requests']>, E>>;
42
42
  scheduleTrace<E extends IAdtError = IAdtError>(options?: IProfilerTraceParameters & IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['scheduled']>, E>>;
43
- run<E extends IAdtError = IAdtError>(target: IProgramExecutionTarget, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['run']>, E>>;
43
+ run<E extends IAdtError = IAdtError>(target: IProgramExecutionTarget, options?: IProgramExecuteOptions & IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['run']>, E>>;
44
44
  runWithProfiler<E extends IAdtError = IAdtError>(target: IProgramExecutionTarget, options: IProgramExecuteWithProfilerOptions & IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['run']>, E>>;
45
45
  }
46
46
  //# sourceMappingURL=ProgramExecutor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProgramExecutor.d.ts","sourceRoot":"","sources":["../../../src/executors/program/ProgramExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProgramExecutor.d.ts","sourceRoot":"","sources":["../../../src/executors/program/ProgramExecutor.ts"],"names":[],"mappings":"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"}
@@ -55,7 +55,7 @@ class ProgramExecutor {
55
55
  return this.scheduling.scheduleTrace(options);
56
56
  }
57
57
  async run(target, options) {
58
- return (0, adtResponse_1.answering)(() => (0, run_1.runProgram)(this.connection, target.programName), this.results.run, options?.analyse);
58
+ return (0, adtResponse_1.answering)(() => (0, run_1.runProgram)(this.connection, target.programName, undefined, options?.debuggee), this.results.run, options?.analyse);
59
59
  }
60
60
  async runWithProfiler(target, options) {
61
61
  const normalizedProgramName = (0, internalUtils_1.encodeSapObjectName)(target.programName).toUpperCase();
@@ -78,10 +78,9 @@ export declare class AbapDebugger<R extends IAbapDebuggerResults = typeof abapDe
78
78
  * Arm breakpoints under the identity's key, replacing what the key held -
79
79
  * a `validationOnly` request too (see `setBreakpoints` in `abap.ts`).
80
80
  *
81
- * `skipCount` greater than 0 is still in the 14.x contract's type but is
82
- * answered `ok: false` here without a request: the server ignores it on an
83
- * external breakpoint (measured on premise (2026-10-11), BASIS 816), and it
84
- * is to leave the contract in its next major. `0` is accepted.
81
+ * `clientId` on a breakpoint tags it; the server echoes it on every answer
82
+ * row, placed and refused, in an order of its own (see `setBreakpoints` in
83
+ * `abap.ts`).
85
84
  */
86
85
  setBreakpoints<E extends IAdtError = IAdtError>(identity: IDebuggerIdentity, breakpoints: readonly IDebuggerBreakpoint[], options?: {
87
86
  validationOnly?: boolean;
@@ -137,10 +136,9 @@ export declare class AbapDebugger<R extends IAbapDebuggerResults = typeof abapDe
137
136
  * Replace the key's breakpoints, `full` or by object with `partial` (see
138
137
  * `syncBreakpoints` in `abap.ts`).
139
138
  *
140
- * `skipCount` greater than 0 is still in the 14.x contract's type but is
141
- * answered `ok: false` here without a request: the server ignores it on an
142
- * external breakpoint (measured on premise (2026-10-11), BASIS 816), and it
143
- * is to leave the contract in its next major. `0` is accepted.
139
+ * `clientId` on a breakpoint tags it; the server echoes it on every answer
140
+ * row, placed and refused, in an order of its own (see `setBreakpoints` in
141
+ * `abap.ts`).
144
142
  */
145
143
  syncBreakpoints<E extends IAdtError = IAdtError>(identity: IDebuggerIdentity, sync: IDebuggerBreakpointSync, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<Of<R, 'breakpoints'>, E>>;
146
144
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"AbapDebugger.d.ts","sourceRoot":"","sources":["../../../src/runtime/debugger/AbapDebugger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbapDebugger.d.ts","sourceRoot":"","sources":["../../../src/runtime/debugger/AbapDebugger.ts"],"names":[],"mappings":"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"}
@@ -61,10 +61,9 @@ class AbapDebugger {
61
61
  * Arm breakpoints under the identity's key, replacing what the key held -
62
62
  * a `validationOnly` request too (see `setBreakpoints` in `abap.ts`).
63
63
  *
64
- * `skipCount` greater than 0 is still in the 14.x contract's type but is
65
- * answered `ok: false` here without a request: the server ignores it on an
66
- * external breakpoint (measured on premise (2026-10-11), BASIS 816), and it
67
- * is to leave the contract in its next major. `0` is accepted.
64
+ * `clientId` on a breakpoint tags it; the server echoes it on every answer
65
+ * row, placed and refused, in an order of its own (see `setBreakpoints` in
66
+ * `abap.ts`).
68
67
  */
69
68
  async setBreakpoints(identity, breakpoints, options) {
70
69
  return (0, adtResponse_1.answering)(() => (0, abap_1.setBreakpoints)(this.connection, identity, breakpoints, options?.validationOnly), this.reading('breakpoints'), options?.analyse);
@@ -144,10 +143,9 @@ class AbapDebugger {
144
143
  * Replace the key's breakpoints, `full` or by object with `partial` (see
145
144
  * `syncBreakpoints` in `abap.ts`).
146
145
  *
147
- * `skipCount` greater than 0 is still in the 14.x contract's type but is
148
- * answered `ok: false` here without a request: the server ignores it on an
149
- * external breakpoint (measured on premise (2026-10-11), BASIS 816), and it
150
- * is to leave the contract in its next major. `0` is accepted.
146
+ * `clientId` on a breakpoint tags it; the server echoes it on every answer
147
+ * row, placed and refused, in an order of its own (see `setBreakpoints` in
148
+ * `abap.ts`).
151
149
  */
152
150
  async syncBreakpoints(identity, sync, options) {
153
151
  return (0, adtResponse_1.answering)(() => (0, abap_1.syncBreakpoints)(this.connection, identity, sync), this.reading('breakpoints'), options?.analyse);
@@ -57,11 +57,12 @@ export declare function buildSyncBreakpointsXml(identity: IDebuggerIdentity, syn
57
57
  * include it falls in (`#start=16` in a class became `LINE_NR=5` of the method
58
58
  * include), so its id cannot be predicted.
59
59
  *
60
- * **`skipCount` greater than 0 is refused** (`ok: false`, nothing sent). It is
61
- * still in the 14.x contract's type, but the server ignores it on an external
62
- * breakpoint - the first hit stops (measured on premise (2026-10-11), BASIS
63
- * 816) - and it is to leave the contract in its next major. `0` is accepted
64
- * and sends nothing.
60
+ * **`clientId`** on a breakpoint of any kind is the caller's tag, sent as the
61
+ * row's `clientId`. The server echoes it on every row of the answer - placed
62
+ * and refused - and does not keep the request's order: on premise (2026-10-11),
63
+ * BASIS 816, the refused rows came first. A line breakpoint is also renumbered,
64
+ * so neither the position nor the id pairs an answer row with its request row;
65
+ * the tag does.
65
66
  */
66
67
  export declare function setBreakpoints(connection: IAbapConnection, identity: IDebuggerIdentity, breakpoints: readonly IDebuggerBreakpoint[], validationOnly?: boolean): Promise<IAdtWireResponse>;
67
68
  /**
@@ -71,11 +72,12 @@ export declare function setBreakpoints(connection: IAbapConnection, identity: ID
71
72
  * for it, `full` with `[]` to clear the key, and `partial` to replace one
72
73
  * object's line breakpoints and keep the rest.
73
74
  *
74
- * **`skipCount` greater than 0 is refused** (`ok: false`, nothing sent). It is
75
- * still in the 14.x contract's type, but the server ignores it on an external
76
- * breakpoint - the first hit stops (measured on premise (2026-10-11), BASIS
77
- * 816) - and it is to leave the contract in its next major. `0` is accepted
78
- * and sends nothing.
75
+ * **`clientId`** on a breakpoint of any kind is the caller's tag, sent as the
76
+ * row's `clientId`. The server echoes it on every row of the answer - placed
77
+ * and refused - and does not keep the request's order: on premise (2026-10-11),
78
+ * BASIS 816, the refused rows came first. A line breakpoint is also renumbered,
79
+ * so neither the position nor the id pairs an answer row with its request row;
80
+ * the tag does.
79
81
  *
80
82
  * Measured on premise (2026-10-11), BASIS 816, with two classes (two main
81
83
  * programs) and a caught exception:
@@ -1 +1 @@
1
- {"version":3,"file":"abap.d.ts","sourceRoot":"","sources":["../../../src/runtime/debugger/abap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abap.d.ts","sourceRoot":"","sources":["../../../src/runtime/debugger/abap.ts"],"names":[],"mappings":"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"}
@@ -129,20 +129,13 @@ function breakpointRow(bp, only) {
129
129
  // unconditionally - refuse instead.
130
130
  throw new Error(`condition is accepted on a line breakpoint only, not on kind "${bp.kind}"`);
131
131
  }
132
- if (bp.skipCount !== undefined && bp.skipCount > 0) {
133
- // Still in the 14.x contract's type, refused here, and to leave the
134
- // contract in its next major. Every breakpoint this module sends is
135
- // external (`scope="external"`), and the server accepts a skip count there
136
- // and drops it: it is not echoed, and the first hit stops - measured on
137
- // premise (2026-10-11), BASIS 816, `skipCount="2"` on a loop line stopped
138
- // on pass 1. The stored form of an external breakpoint has no field for it
139
- // (server source, BASIS 816, read 2026-10-11). Sending it would arm a
140
- // breakpoint that stops on every hit - refuse. `0` means "no skip", which
141
- // is what the server does anyway, so it is accepted and sends nothing.
142
- throw new Error(`skipCount ${bp.skipCount} is not applied to an external breakpoint (kind "${bp.kind}"): the server ignores it`);
143
- }
144
132
  const cond = condition ? ` condition="${escapeXml(condition)}"` : '';
145
- return ` <breakpoint kind="${bp.kind}" ${breakpointTarget(bp)}${cond}${only}/>`;
133
+ // The caller's tag, on any kind. The server echoes it on every row of the
134
+ // answer, placed and refused, and does not keep the request's order (refused
135
+ // rows first) - measured on premise (2026-10-11), BASIS 816 - so it is what
136
+ // pairs an answer row with the request row that made it.
137
+ const tag = bp.clientId !== undefined ? ` clientId="${escapeXml(bp.clientId)}"` : '';
138
+ return ` <breakpoint kind="${bp.kind}" ${breakpointTarget(bp)}${cond}${tag}${only}/>`;
146
139
  }
147
140
  /**
148
141
  * The body of `POST /debugger/breakpoints`, without a `syncScope`. Without one
@@ -184,11 +177,12 @@ function buildSyncBreakpointsXml(identity, sync) {
184
177
  * include it falls in (`#start=16` in a class became `LINE_NR=5` of the method
185
178
  * include), so its id cannot be predicted.
186
179
  *
187
- * **`skipCount` greater than 0 is refused** (`ok: false`, nothing sent). It is
188
- * still in the 14.x contract's type, but the server ignores it on an external
189
- * breakpoint - the first hit stops (measured on premise (2026-10-11), BASIS
190
- * 816) - and it is to leave the contract in its next major. `0` is accepted
191
- * and sends nothing.
180
+ * **`clientId`** on a breakpoint of any kind is the caller's tag, sent as the
181
+ * row's `clientId`. The server echoes it on every row of the answer - placed
182
+ * and refused - and does not keep the request's order: on premise (2026-10-11),
183
+ * BASIS 816, the refused rows came first. A line breakpoint is also renumbered,
184
+ * so neither the position nor the id pairs an answer row with its request row;
185
+ * the tag does.
192
186
  */
193
187
  async function setBreakpoints(connection, identity, breakpoints, validationOnly = false) {
194
188
  return connection.makeAdtRequest({
@@ -206,11 +200,12 @@ async function setBreakpoints(connection, identity, breakpoints, validationOnly
206
200
  * for it, `full` with `[]` to clear the key, and `partial` to replace one
207
201
  * object's line breakpoints and keep the rest.
208
202
  *
209
- * **`skipCount` greater than 0 is refused** (`ok: false`, nothing sent). It is
210
- * still in the 14.x contract's type, but the server ignores it on an external
211
- * breakpoint - the first hit stops (measured on premise (2026-10-11), BASIS
212
- * 816) - and it is to leave the contract in its next major. `0` is accepted
213
- * and sends nothing.
203
+ * **`clientId`** on a breakpoint of any kind is the caller's tag, sent as the
204
+ * row's `clientId`. The server echoes it on every row of the answer - placed
205
+ * and refused - and does not keep the request's order: on premise (2026-10-11),
206
+ * BASIS 816, the refused rows came first. A line breakpoint is also renumbered,
207
+ * so neither the position nor the id pairs an answer row with its request row;
208
+ * the tag does.
214
209
  *
215
210
  * Measured on premise (2026-10-11), BASIS 816, with two classes (two main
216
211
  * programs) and a caught exception:
@@ -0,0 +1,29 @@
1
+ /**
2
+ * The `SAP-PASSPORT` a run carries so that a terminal-mode listener catches it.
3
+ *
4
+ * A terminal-mode listener catches a request by the terminal id and IDE id the
5
+ * request carries in its DSR passport, as two system variable items: (2, 1) the
6
+ * terminal id, (2, 2) the IDE id. A run URL has no parameter for them. This is
7
+ * the passport the ADT client builds for its own runs: version 3, system type 10,
8
+ * a random root context id and transaction id, the two items, nothing else.
9
+ *
10
+ * Measured on premise (2026-10-12, BASIS 816): a class run carrying it is caught
11
+ * by the terminal-mode listener with those ids and by no other; without it no
12
+ * terminal-mode listener catches the run; a passport whose root context id and
13
+ * transaction id are zero is caught all the same. The output was compared byte
14
+ * for byte with SAP's own passport library on the same fields.
15
+ */
16
+ import type { IDebuggeeIds } from '@mcp-abap-adt/interfaces-adt';
17
+ /** Fixed per-request fields, for a reproducible passport; random when omitted. */
18
+ export interface IDebuggeePassportFields {
19
+ /** 16 bytes as 32 hex characters. */
20
+ rootContextId?: string;
21
+ /** 32 hex characters, written as text. */
22
+ transId?: string;
23
+ }
24
+ /**
25
+ * The `SAP-PASSPORT` header value (upper-case hex) carrying the debuggee's ids.
26
+ * Each id is 32 hex characters, as {@link IDebuggeeIds} states.
27
+ */
28
+ export declare function debuggeePassport(ids: IDebuggeeIds, fields?: IDebuggeePassportFields): string;
29
+ //# sourceMappingURL=passport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passport.d.ts","sourceRoot":"","sources":["../../../src/runtime/debugger/passport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAqBjE,kFAAkF;AAClF,MAAM,WAAW,uBAAuB;IACtC,qCAAqC;IACrC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,YAAY,EACjB,MAAM,GAAE,uBAA4B,GACnC,MAAM,CAWR"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ /**
3
+ * The `SAP-PASSPORT` a run carries so that a terminal-mode listener catches it.
4
+ *
5
+ * A terminal-mode listener catches a request by the terminal id and IDE id the
6
+ * request carries in its DSR passport, as two system variable items: (2, 1) the
7
+ * terminal id, (2, 2) the IDE id. A run URL has no parameter for them. This is
8
+ * the passport the ADT client builds for its own runs: version 3, system type 10,
9
+ * a random root context id and transaction id, the two items, nothing else.
10
+ *
11
+ * Measured on premise (2026-10-12, BASIS 816): a class run carrying it is caught
12
+ * by the terminal-mode listener with those ids and by no other; without it no
13
+ * terminal-mode listener catches the run; a passport whose root context id and
14
+ * transaction id are zero is caught all the same. The output was compared byte
15
+ * for byte with SAP's own passport library on the same fields.
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.debuggeePassport = debuggeePassport;
19
+ const node_crypto_1 = require("node:crypto");
20
+ /** 288 bytes: the passport with every per-request field zero. */
21
+ const TEMPLATE = [
22
+ '2A54482A03012000000000000000000000000000000000000000000000000000',
23
+ '0000000000000000000000000000000000000000000000000000000000000000',
24
+ '0000000000000000000000000000000000000000000000000000000000000000',
25
+ '0000000000000000000000000000000000000000000000000000000000000000',
26
+ '0000000000000000000000000000000000000000000000000000000000000000',
27
+ '000000000000000000000000000000000000000000000000000A000000000000',
28
+ '0000000000000000000000000000000000000000000000000000000000000001',
29
+ '00E22A54482A01003A0100010002000200010300170000000000000000000000',
30
+ '000000000000020002030017000000000000000000000000000000002A54482A',
31
+ ].join('');
32
+ /** Byte offsets of the per-request fields. */
33
+ const TRANS_ID = 149; // 32 ASCII hex characters
34
+ const ROOT_CONTEXT_ID = 186; // 16 bytes
35
+ const TERMINAL_ID = 245; // 16 bytes, system variable item (2, 1)
36
+ const IDE_ID = 268; // 16 bytes, system variable item (2, 2)
37
+ /**
38
+ * The `SAP-PASSPORT` header value (upper-case hex) carrying the debuggee's ids.
39
+ * Each id is 32 hex characters, as {@link IDebuggeeIds} states.
40
+ */
41
+ function debuggeePassport(ids, fields = {}) {
42
+ const passport = Buffer.from(TEMPLATE, 'hex');
43
+ const hex = () => (0, node_crypto_1.randomBytes)(16).toString('hex').toUpperCase();
44
+ Buffer.from(fields.transId ?? hex(), 'ascii').copy(passport, TRANS_ID);
45
+ Buffer.from(fields.rootContextId ?? hex(), 'hex').copy(passport, ROOT_CONTEXT_ID);
46
+ Buffer.from(ids.terminalId, 'hex').copy(passport, TERMINAL_ID);
47
+ Buffer.from(ids.ideId, 'hex').copy(passport, IDE_ID);
48
+ return passport.toString('hex').toUpperCase();
49
+ }
@@ -1879,8 +1879,11 @@ const identity = { debuggingMode: 'user', requestUser, terminalId, ideId } as co
1879
1879
 
1880
1880
  listenerConnection.setSessionType('stateful');
1881
1881
  const listener = new AbapDebugger(listenerConnection, logger);
1882
+ // clientId (any kind) is the caller's tag: the server echoes it on every row of
1883
+ // the answer, placed and refused, and does not keep the request's order, so it
1884
+ // is what pairs an answer row with the request row that made it.
1882
1885
  await listener.setBreakpoints(identity, [
1883
- { kind: 'line', uri: `${sourceUri}#start=12` },
1886
+ { kind: 'line', uri: `${sourceUri}#start=12`, clientId: 'loop-line' },
1884
1887
  ]);
1885
1888
 
1886
1889
  const caught = listener.listen(identity, { holdSeconds: 60 });
@@ -1939,11 +1942,12 @@ await run;
1939
1942
  on a connection of its own. The library adds no guard.
1940
1943
  Measured on premise (2026-10-11), SAP_BASIS 816; the caching is in the server
1941
1944
  source, SAP_BASIS 816, read 2026-10-11.
1942
- - **`skipCount` is typed but refused.** It is still in the 14.x contract's
1943
- type, but a value above 0 is answered `ok: false` without a request, because
1944
- the server accepts it on an external breakpoint and ignores it: the first hit
1945
- stops. Measured on premise (2026-10-11), SAP_BASIS 816. `0` is accepted, and
1946
- the field is to leave the contract in its next major.
1945
+ - **`clientId` tags a breakpoint of any kind.** The server echoes it on every
1946
+ row of the answer - placed and refused - and answers the rows out of the
1947
+ request's order, refused first; a line breakpoint is renumbered as well. Pair
1948
+ by `clientId`. Measured on premise (2026-10-11), SAP_BASIS 816. There is no
1949
+ `skipCount` (removed in `interfaces-adt` 15): the server ignored it on an
1950
+ external breakpoint.
1947
1951
  - **`terminateDebugger`** ends the debugger's own session, and the answer is a
1948
1952
  plain `500` with no ADT document. The program runs on and returns its
1949
1953
  output, and the session cannot be used afterwards. Pass
@@ -1976,14 +1980,27 @@ const terminal = { debuggingMode: 'terminal', terminalId, ideId } as const;
1976
1980
  Windows client keeps one per logon, and a further window or a browser joins
1977
1981
  it. A `terminalId` equal to `ideId` means that IDE's own requests only
1978
1982
  (server source, BASIS 816, read 2026-10-11).
1979
- - **A catch in terminal mode is unmeasured.** The mode follows the discovery and
1980
- the server source: the listener, the check, the breakpoints and their
1981
- deletion answer `200` on premise (2026-10-11), BASIS 816, but Eclipse's own
1982
- runs under Terminal ID were not caught there. If it does not catch for you,
1983
- file an issue with: the identity's mode; whether the terminal id is the one
1984
- SAP GUI shows; how the program was started (SAP GUI, browser, RFC, job); and
1985
- the wire log of the request (`WIRE_LOG=<file>` in this repository's tests;
1986
- `DEBUG_HTTP_WIRE=true` in the MCP server).
1983
+ - **A catch in terminal mode needs the ids on the request.** A terminal-mode
1984
+ listener catches a request by the terminal id and IDE id the request carries
1985
+ in its `SAP-PASSPORT` header, the way the ADT client sends them; a run URL has
1986
+ no parameter for them. Give the run the identity's ids and it carries them:
1987
+
1988
+ ```typescript
1989
+ await new AdtExecutor(triggerConnection, logger)
1990
+ .getClassExecutor()
1991
+ .run({ className }, { debuggee: { terminalId, ideId } });
1992
+ ```
1993
+
1994
+ Measured on premise (2026-10-12), BASIS 816: a class run with the ids was
1995
+ caught by the listener with those ids and by no other, with `terminalId`
1996
+ equal to `ideId` or not; without them no terminal-mode listener caught it.
1997
+ A program run takes the same option. A request this library does not start
1998
+ (SAP GUI, a browser) carries what its own client puts there.
1999
+ - **The ids do not separate the breakpoints.** Two listeners of one SAP user in
2000
+ terminal mode, with other terminal and IDE ids, both listened, and each run
2001
+ was caught only by the listener whose ids it carried, but `setBreakpoints`
2002
+ under one identity replaced the set the other had armed (measured the same
2003
+ day). The server source reads otherwise (below); the measurement stands.
1987
2004
 
1988
2005
  #### Another user
1989
2006
 
@@ -0,0 +1,43 @@
1
+ # Migrating to 29.0.0
2
+
3
+ 29.0.0 moves the breakpoints to `@mcp-abap-adt/interfaces-adt` 15: `skipCount`
4
+ leaves the type and every kind gains `clientId`. Nothing else changed.
5
+
6
+ Declare `@mcp-abap-adt/interfaces-adt` `^15.0.0` if your package imports it, so
7
+ npm installs one copy: `npm ls @mcp-abap-adt/interfaces-adt` must show one
8
+ version. `@mcp-abap-adt/adt-strategies` 0.10.0 declares the same range.
9
+
10
+ ## 1. `skipCount` is removed from the type - drop it
11
+
12
+ On 28.x a value above 0 was refused at run time, answered `ok: false` without a
13
+ request; the server accepts `skipCount` on an external breakpoint and ignores
14
+ it, so the first hit stops (measured on premise (2026-10-11), BASIS 816). The
15
+ compiler now refuses the field. Delete it, and count hits yourself if you need
16
+ the n-th one.
17
+
18
+ ```typescript
19
+ // before
20
+ { kind: 'line', uri, skipCount: 2 }
21
+ // after
22
+ { kind: 'line', uri }
23
+ ```
24
+
25
+ ## 2. `clientId` is available on every kind
26
+
27
+ `clientId` is the caller's tag. The server echoes it on every row of the answer,
28
+ placed and refused alike, and does not keep the request's order (the refused
29
+ rows came first; measured on premise (2026-10-11), BASIS 816). A line
30
+ breakpoint is renumbered as well, so pair answer rows with request rows by
31
+ `clientId`, not by position. Optional; a breakpoint without one sends nothing.
32
+
33
+ ```typescript
34
+ await dbg.setBreakpoints(identity, [
35
+ { kind: 'line', uri, clientId: 'first' },
36
+ { kind: 'exception', exceptionClass, clientId: 'second' },
37
+ ]);
38
+ ```
39
+
40
+ ## 3. A package that implements or mocks the contract
41
+
42
+ Breakpoint objects typed by `IDebuggerBreakpoint` take the new optional field
43
+ and lose `skipCount`; a mock or fixture that sets `skipCount` stops compiling.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcp-abap-adt/adt-clients",
3
- "version": "28.0.0",
3
+ "version": "29.1.0",
4
4
  "description": "ADT clients for SAP ABAP systems - AdtClient and AdtRuntimeClient",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -117,7 +117,7 @@
117
117
  "node": ">=18.0.0"
118
118
  },
119
119
  "dependencies": {
120
- "@mcp-abap-adt/interfaces-adt": "^14.0.0",
120
+ "@mcp-abap-adt/interfaces-adt": "^15.1.0",
121
121
  "@mcp-abap-adt/interfaces-adt-connection": "^2.0.0",
122
122
  "@mcp-abap-adt/interfaces-network": "^2.0.0",
123
123
  "@mcp-abap-adt/interfaces-utils": "^1.1.0",
@@ -127,7 +127,7 @@
127
127
  },
128
128
  "devDependencies": {
129
129
  "@biomejs/biome": "^2.4.4",
130
- "@mcp-abap-adt/adt-strategies": "^0.8.0",
130
+ "@mcp-abap-adt/adt-strategies": "^0.10.0",
131
131
  "@mcp-abap-adt/auth-providers": "^5.0.1",
132
132
  "@mcp-abap-adt/connection": "^10.0.2",
133
133
  "@mcp-abap-adt/interfaces-auth": "^3.0.0",