@mcp-abap-adt/adt-clients 26.0.0 → 26.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
@@ -905,7 +905,7 @@ Since **24.0.0** there is no unit-test handler at all: every member `getUnitTest
905
905
 
906
906
  Since **25.0.0** ATC takes programs and every kind of include, `interfaces-adt` is `^12.0.0`, group operations refuse a reference they cannot address before any request, and a legacy client answers a refusal for an object type the system lacks instead of throwing. See [MIGRATION-25.md](docs/usage/MIGRATION-25.md).
907
907
 
908
- The runtime client narrows the same way. `AdtRuntimeClient.getAtc()` implements `IAtcRunStatusReadable & IAtcFindings`, plus `resolveCheckVariant`, `createWorklist` and `startRun` — a check run is three requests, started and then read, never created, locked, activated or versioned, and the type says so rather than offering the rest and throwing. It is not `IAdtRunnable` since 19.0.0: that atom's `run` is one call.
908
+ The runtime client narrows the same way. `AdtRuntimeClient.getAtc()` implements `IAtcRunStatusReadable & IAtcFindings`, plus `resolveCheckVariant`, `listCheckVariants`, `createWorklist` and `startRun` — a check run is three requests, started and then read, never created, locked, activated or versioned, and the type says so rather than offering the rest and throwing. It is not `IAdtRunnable` since 19.0.0: that atom's `run` is one call.
909
909
 
910
910
  **A guard keeps this true.** `src/__tests__/unit/capabilities/` compares all 37 factory return types against the 12 atoms in both directions at compile time, calls every method of every declared capability against a recording connection to check it issues the request its capability names, and fails if a new factory appears without an entry. Adding a throwing method back to a narrowed handler stops compiling. The guard walks `AdtClient` and `AdtClientLegacy` only; the runtime accessors are pinned by `src/__tests__/unit/clients/AdtRuntimeClient.factory.test.ts`.
911
911
 
@@ -56,8 +56,8 @@ class AdtBehaviorImplementation {
56
56
  constructor(connection, logger, lockRegistry,
57
57
  // The one cast in this file, and it is on the default. See AdtClass.
58
58
  results = types_1.classDocuments,
59
- // Handed to the inner class so a create carries the responsible person and
60
- // master system the client knows, like a class create does.
59
+ // Handed to the inner class so a create carries the master system and
60
+ // master language the client knows, like a class create does.
61
61
  systemContext) {
62
62
  this.results = results;
63
63
  this.connection = connection;
@@ -1 +1 @@
1
- {"version":3,"file":"AdtClass.d.ts","sourceRoot":"","sources":["../../../src/core/class/AdtClass.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AdtClass.d.ts","sourceRoot":"","sources":["../../../src/core/class/AdtClass.ts"],"names":[],"mappings":"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"}
@@ -70,7 +70,8 @@ class AdtClass extends AdtClassMemberBase_1.AdtClassMemberBase {
70
70
  final: config.final,
71
71
  create_protected: config.createProtected,
72
72
  master_system: config.masterSystem ?? this.systemContext.masterSystem,
73
- responsible: config.responsible ?? this.systemContext.responsible,
73
+ // config.responsible is not sent: see create.ts — SAP would record
74
+ // it as the creator, not as the responsible person.
74
75
  masterLanguage: config.masterLanguage ?? this.systemContext.masterLanguage,
75
76
  template_xml: config.classTemplate,
76
77
  }, this.logger, this.contentTypes), this.results.created, options?.analyse);
@@ -1 +1 @@
1
- {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/core/class/create.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AAEjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAK9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAIlD;;;;;GAKG;AACH,wBAAsB,MAAM,CAC1B,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,kBAAkB,EACxB,MAAM,CAAC,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,gBAAgB,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CAmG3B"}
1
+ {"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../src/core/class/create.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AAEjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAK9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAIlD;;;;;GAKG;AACH,wBAAsB,MAAM,CAC1B,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,kBAAkB,EACxB,MAAM,CAAC,EAAE,OAAO,EAChB,YAAY,CAAC,EAAE,gBAAgB,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CAsG3B"}
@@ -20,7 +20,6 @@ async function create(connection, args, logger, contentTypes) {
20
20
  const description = (0, internalUtils_1.limitDescription)(args.description || args.class_name || '');
21
21
  const url = `${objects_1.CLASS.collection}${args.transport_request ? `?corrNr=${args.transport_request}` : ''}`;
22
22
  const masterSystem = args.master_system || '';
23
- const username = args.responsible || '';
24
23
  const finalAttr = args.final ? 'true' : 'false';
25
24
  const visibilityAttr = args.create_protected ? 'protected' : 'public';
26
25
  const superClassXml = args.superclass
@@ -29,14 +28,18 @@ async function create(connection, args, logger, contentTypes) {
29
28
  const masterSystemAttr = masterSystem
30
29
  ? ` adtcore:masterSystem="${masterSystem}"`
31
30
  : '';
32
- const responsibleAttr = username ? ` adtcore:responsible="${username}"` : '';
31
+ // No adtcore:responsible: a class create stores that attribute as the
32
+ // class's creator (createdBy), while the responsible person is always the
33
+ // logon user. Measured on-premise (2026-10-04): a create sending another
34
+ // user as responsible left responsible = logon user, createdBy = that user;
35
+ // no ADT request changes it afterwards (the metadata PUT ignores it).
33
36
  const abapSourceNamespace = args.template_xml
34
37
  ? ' xmlns:abapsource="http://www.sap.com/adt/abapsource"'
35
38
  : '';
36
39
  const templateSection = args.template_xml
37
40
  ? `\n\n ${args.template_xml}\n\n`
38
41
  : '\n\n';
39
- const metadataXml = `<?xml version="1.0" encoding="UTF-8"?><class:abapClass xmlns:class="http://www.sap.com/adt/oo/classes" xmlns:adtcore="http://www.sap.com/adt/core"${abapSourceNamespace} adtcore:description="${description}" adtcore:language="${args.masterLanguage || 'EN'}" adtcore:name="${args.class_name}" adtcore:type="CLAS/OC" adtcore:masterLanguage="${args.masterLanguage || 'EN'}"${masterSystemAttr}${responsibleAttr} class:final="${finalAttr}" class:visibility="${visibilityAttr}">
42
+ const metadataXml = `<?xml version="1.0" encoding="UTF-8"?><class:abapClass xmlns:class="http://www.sap.com/adt/oo/classes" xmlns:adtcore="http://www.sap.com/adt/core"${abapSourceNamespace} adtcore:description="${description}" adtcore:language="${args.masterLanguage || 'EN'}" adtcore:name="${args.class_name}" adtcore:type="CLAS/OC" adtcore:masterLanguage="${args.masterLanguage || 'EN'}"${masterSystemAttr} class:final="${finalAttr}" class:visibility="${visibilityAttr}">
40
43
 
41
44
 
42
45
 
@@ -130,7 +130,6 @@ export interface ICreateClassParams {
130
130
  package_name: string;
131
131
  transport_request?: string;
132
132
  master_system?: string;
133
- responsible?: string;
134
133
  masterLanguage?: string;
135
134
  superclass?: string;
136
135
  final?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/class/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAIpE,YAAY,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAEjE;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC;;;;;;;;GAQG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAEjC,sEAAsE;AACtE,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEtC;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE3C,oCAAoC;AACpC,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE3C;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEzC,mEAAmE;AACnE,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC;AAErC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC3C,0DAA0D;IAC1D,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IACjD,mDAAmD;IACnD,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7C,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,4BAA4B;IAC5B,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;CAClD;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;CAaF,CAAC;AAE1B;;;;;;;;;GASG;AAEH,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/class/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAIpE,YAAY,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAEjE;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC;;;;;;;;GAQG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AAEjC,sEAAsE;AACtE,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAEtC;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE3C,oCAAoC;AACpC,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE3C;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEzC,mEAAmE;AACnE,MAAM,MAAM,YAAY,GAAG,SAAS,CAAC;AAErC;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IACzC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC9C,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC3C,0DAA0D;IAC1D,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IACjD,mDAAmD;IACnD,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7C,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;IAC5C,4BAA4B;IAC5B,QAAQ,CAAC,aAAa,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC;CAClD;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;CAaF,CAAC;AAE1B;;;;;;;;;GASG;AAEH,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B"}
@@ -22,6 +22,8 @@ import type { ILogger } from '@mcp-abap-adt/interfaces-utils';
22
22
  export interface IAtcResults {
23
23
  /** `/atc/customizing` — `resolveCheckVariant`. */
24
24
  readonly checkVariant: IResultStrategy<unknown>;
25
+ /** `/atc/variants`, `nameditem:namedItemList` — `listCheckVariants`. */
26
+ readonly checkVariants: IResultStrategy<unknown>;
25
27
  /** `/atc/worklists` POST, a bare id in `text/plain` — `createWorklist`. */
26
28
  readonly worklist: IResultStrategy<unknown>;
27
29
  /**
@@ -44,6 +46,7 @@ export interface IAtcResults {
44
46
  */
45
47
  export declare const atcDocuments: {
46
48
  checkVariant: IResultStrategy<string>;
49
+ checkVariants: IResultStrategy<string>;
47
50
  worklist: IResultStrategy<string>;
48
51
  startedRun: IResultStrategy<string>;
49
52
  waitingRun: IResultStrategy<string>;
@@ -94,6 +97,16 @@ export declare class AdtAtc<R extends IAtcResults = typeof atcDocuments> impleme
94
97
  * reads the variant out of it; a customizing without one reads as `''`.
95
98
  */
96
99
  resolveCheckVariant<E extends IAdtError = IAdtError>(options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['checkVariant']>, E>>;
100
+ /**
101
+ * The check variants whose name matches the pattern — `/atc/variants`.
102
+ *
103
+ * One request. `name` is required because the list is empty without it;
104
+ * `*` lists every variant. See `listAtcCheckVariants` for what the limit and
105
+ * the answer's count do and do not say.
106
+ */
107
+ listCheckVariants<E extends IAdtError = IAdtError>(name: string, options?: {
108
+ maxItemCount?: number;
109
+ } & IAdtAnalyseOptions<E>): Promise<IAdtResponse<ReturnType<R['checkVariants']>, E>>;
97
110
  /**
98
111
  * A worklist for a variant — `/atc/worklists`.
99
112
  *
@@ -1 +1 @@
1
- {"version":3,"file":"AdtAtc.d.ts","sourceRoot":"","sources":["../../../src/runtime/atc/AdtAtc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AdtAtc.d.ts","sourceRoot":"","sources":["../../../src/runtime/atc/AdtAtc.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ const DEFAULT_MAXIMUM_VERDICTS = 100;
32
32
  */
33
33
  exports.atcDocuments = {
34
34
  checkVariant: resultStrategy_1.rawDocument,
35
+ checkVariants: resultStrategy_1.rawDocument,
35
36
  worklist: resultStrategy_1.rawDocument,
36
37
  startedRun: resultStrategy_1.rawDocument,
37
38
  waitingRun: resultStrategy_1.rawDocument,
@@ -83,6 +84,16 @@ class AdtAtc {
83
84
  async resolveCheckVariant(options) {
84
85
  return (0, adtResponse_1.answering)(() => (0, run_1.getAtcCustomizing)(this.connection), this.results.checkVariant, options?.analyse);
85
86
  }
87
+ /**
88
+ * The check variants whose name matches the pattern — `/atc/variants`.
89
+ *
90
+ * One request. `name` is required because the list is empty without it;
91
+ * `*` lists every variant. See `listAtcCheckVariants` for what the limit and
92
+ * the answer's count do and do not say.
93
+ */
94
+ async listCheckVariants(name, options) {
95
+ return (0, adtResponse_1.answering)(() => (0, run_1.listAtcCheckVariants)(this.connection, name, options?.maxItemCount), this.results.checkVariants, options?.analyse);
96
+ }
86
97
  /**
87
98
  * A worklist for a variant — `/atc/worklists`.
88
99
  *
@@ -29,6 +29,21 @@ export declare function buildAtcObjectUri(ref: IAtcObjectRef): string;
29
29
  * controller does not support method POST"**.
30
30
  */
31
31
  export declare function getAtcCustomizing(connection: IAbapConnection): Promise<IAdtWireResponse>;
32
+ /**
33
+ * The check variants whose name matches `name` — `/atc/variants`.
34
+ *
35
+ * `name` is a pattern: `*` is a wildcard, the match ignores case, and without
36
+ * a `*` it matches one name exactly (`DEF` finds no `DEFAULT`). It is the
37
+ * argument because the list is empty without it, not complete — a system with
38
+ * every variant looks like one with none. `maxItemCount` limits what comes
39
+ * back; `0` or none is no limit. On SAP_BASIS 758 and 816 the limit was exact;
40
+ * on SAP BTP ABAP Environment a limit of 3 answered 6 (2026-10-10). The
41
+ * answer's `totalItemCount` counts what was returned, not what exists, so a
42
+ * truncated list does not say so. `data`, the other parameter the discovery
43
+ * template names, filtered every name out on all three, and is left out.
44
+ * Answered as `application/xml` (or `…nameditems.v1+xml`); JSON is 406.
45
+ */
46
+ export declare function listAtcCheckVariants(connection: IAbapConnection, name: string, maxItemCount?: number): Promise<IAdtWireResponse>;
32
47
  /**
33
48
  * Create the worklist a run writes its findings into.
34
49
  *
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/runtime/atc/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAEV,aAAa,EACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AAmDjD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAkB5D;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,eAAe,GAC1B,OAAO,CAAC,gBAAgB,CAAC,CAO3B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,eAAe,EAC3B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,gBAAgB,CAAC,CAW3B;AAED,wEAAwE;AACxE,wBAAgB,eAAe,CAC7B,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,eAAe,EAAE,MAAM,GACtB,MAAM,CAcR;AAED;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,eAAe,EAAE,MAAM,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,gBAAgB,CAAC,CAQ3B;AAED,8EAA8E;AAC9E,wBAAsB,eAAe,CACnC,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,CAAC,CAO3B;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,CAAC,CAO3B"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/runtime/atc/run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAEV,aAAa,EACd,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AAmDjD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAkB5D;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,eAAe,GAC1B,OAAO,CAAC,gBAAgB,CAAC,CAO3B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,eAAe,EAC3B,IAAI,EAAE,MAAM,EACZ,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,gBAAgB,CAAC,CAU3B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,eAAe,EAC3B,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,gBAAgB,CAAC,CAW3B;AAED,wEAAwE;AACxE,wBAAgB,eAAe,CAC7B,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,eAAe,EAAE,MAAM,GACtB,MAAM,CAcR;AAED;;;;;;GAMG;AACH,wBAAsB,WAAW,CAC/B,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,eAAe,EAAE,MAAM,EACvB,IAAI,EAAE,OAAO,GACZ,OAAO,CAAC,gBAAgB,CAAC,CAQ3B;AAED,8EAA8E;AAC9E,wBAAsB,eAAe,CACnC,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,gBAAgB,CAAC,CAO3B;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,CAAC,CAO3B"}
@@ -15,6 +15,7 @@
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.buildAtcObjectUri = buildAtcObjectUri;
17
17
  exports.getAtcCustomizing = getAtcCustomizing;
18
+ exports.listAtcCheckVariants = listAtcCheckVariants;
18
19
  exports.createAtcWorklist = createAtcWorklist;
19
20
  exports.buildRunPayload = buildRunPayload;
20
21
  exports.startAtcRun = startAtcRun;
@@ -84,6 +85,31 @@ async function getAtcCustomizing(connection) {
84
85
  headers: { Accept: contentTypes_1.ACCEPT_ATC_CUSTOMIZING },
85
86
  });
86
87
  }
88
+ /**
89
+ * The check variants whose name matches `name` — `/atc/variants`.
90
+ *
91
+ * `name` is a pattern: `*` is a wildcard, the match ignores case, and without
92
+ * a `*` it matches one name exactly (`DEF` finds no `DEFAULT`). It is the
93
+ * argument because the list is empty without it, not complete — a system with
94
+ * every variant looks like one with none. `maxItemCount` limits what comes
95
+ * back; `0` or none is no limit. On SAP_BASIS 758 and 816 the limit was exact;
96
+ * on SAP BTP ABAP Environment a limit of 3 answered 6 (2026-10-10). The
97
+ * answer's `totalItemCount` counts what was returned, not what exists, so a
98
+ * truncated list does not say so. `data`, the other parameter the discovery
99
+ * template names, filtered every name out on all three, and is left out.
100
+ * Answered as `application/xml` (or `…nameditems.v1+xml`); JSON is 406.
101
+ */
102
+ async function listAtcCheckVariants(connection, name, maxItemCount) {
103
+ const query = new URLSearchParams({ name });
104
+ if (maxItemCount !== undefined)
105
+ query.set('maxItemCount', String(maxItemCount));
106
+ return connection.makeAdtRequest({
107
+ url: `${ATC}/variants?${query}`,
108
+ method: 'GET',
109
+ timeout: (0, timeouts_1.getTimeout)('default'),
110
+ headers: { Accept: 'application/xml' },
111
+ });
112
+ }
87
113
  /**
88
114
  * Create the worklist a run writes its findings into.
89
115
  *
@@ -1598,6 +1598,22 @@ A system's nominated check variant may not run. On one on-premise system it
1598
1598
  answered `TOOL_FAILURE` "ATC check run aborted, due to missing prerequisites",
1599
1599
  while `DEFAULT` ran. In that case pass a variant to `createWorklist` yourself.
1600
1600
 
1601
+ **Which variants exist: `listCheckVariants(name, { maxItemCount? })`** — one
1602
+ `GET /atc/variants`, answering a `nameditem:namedItemList`. `name` is a pattern
1603
+ and it is required, because without it the list is empty rather than complete:
1604
+ `*` lists every variant, the match ignores case, and a name without `*` matches
1605
+ exactly (`DEF` does not find `DEFAULT`). `maxItemCount` limits the answer, but
1606
+ not exactly everywhere — on SAP BTP ABAP Environment a limit of 3 answered 6 —
1607
+ and the answer's `totalItemCount` counts what came back, not what exists, so a
1608
+ limited list cannot say it was cut. Measured on SAP_BASIS 758 and 816 and on the
1609
+ cloud (2026-10-06/10); the variants differ by system (`DEFAULT` exists on
1610
+ premise, not on the cloud).
1611
+
1612
+ ```typescript
1613
+ const variants = await atc.listCheckVariants('*'); // every one
1614
+ const cloud = await atc.listCheckVariants('abap_cloud*'); // any case
1615
+ ```
1616
+
1601
1617
  Every member answers the document as it arrived — `createWorklist` and
1602
1618
  `resolveCheckVariant` included, which answer `IAdtResponse` like the rest since
1603
1619
  23.0.0. The readings are in `@mcp-abap-adt/adt-strategies`:
@@ -1621,9 +1637,8 @@ const atc = runtime.getAtc({
1621
1637
  runStatus: atcRunStatus,
1622
1638
  });
1623
1639
 
1624
- // The system's variant — or name one yourself and skip this request. On a
1625
- // system whose variant list comes back empty, customizing is the only source
1626
- // of a usable one.
1640
+ // The system's variant — or name one yourself (listCheckVariants lists them)
1641
+ // and skip this request.
1627
1642
  const variant = await atc.resolveCheckVariant();
1628
1643
  if (!variant.ok || !variant.getResult().value) throw new Error('no check variant');
1629
1644
 
@@ -531,6 +531,16 @@ write**, and a service definition is created with an empty source (a create
531
531
  that sends no responsible person is refused — a different thing).
532
532
  `getVersions()` answers `ok` in every one of those states.
533
533
 
534
+ ## A class create cannot set the responsible person
535
+
536
+ On a class create, SAP reads `adtcore:responsible` as the class's **creator**
537
+ (`createdBy`) and records the logon user as **responsible** whatever is sent;
538
+ a later metadata `PUT` does not change it either. So `getClass().create()`
539
+ (and a behavior implementation create) sends no `adtcore:responsible` — the
540
+ `responsible` in the config or the system context is not used for a class.
541
+ Measured on-premise, 2026-10-04. The responsible person of a class is changed
542
+ outside ADT (the object directory entry, SE03 / SE80).
543
+
534
544
  ## The name is taken from the POST onward, and `validate()` may not say so
535
545
 
536
546
  Whatever the create leaves behind, it holds the name. A second create is refused
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcp-abap-adt/adt-clients",
3
- "version": "26.0.0",
3
+ "version": "26.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",