@mcp-abap-adt/adt-clients 42.0.0 → 42.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 +1 -1
- package/dist/constants/contentTypes.d.ts +1 -0
- package/dist/constants/contentTypes.d.ts.map +1 -1
- package/dist/constants/contentTypes.js +5 -1
- package/dist/runtime/atc/AdtAtc.d.ts +25 -3
- package/dist/runtime/atc/AdtAtc.d.ts.map +1 -1
- package/dist/runtime/atc/AdtAtc.js +31 -1
- package/dist/runtime/atc/results.d.ts +29 -0
- package/dist/runtime/atc/results.d.ts.map +1 -0
- package/dist/runtime/atc/results.js +53 -0
- package/docs/usage/ADT_OBJECT_ENTITIES.md +1 -1
- package/docs/usage/CLIENT_API_REFERENCE.md +29 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1390,7 +1390,7 @@ Since **24.0.0** there is no unit-test handler at all: every member `getUnitTest
|
|
|
1390
1390
|
|
|
1391
1391
|
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 (since 37.4.0 in `@mcp-abap-adt/adt-clients-legacy`) answers a refusal for an object type the system lacks instead of throwing. See [MIGRATION-25.md](docs/usage/MIGRATION-25.md).
|
|
1392
1392
|
|
|
1393
|
-
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.
|
|
1393
|
+
The runtime client narrows the same way. `AdtRuntimeClient.getAtc()` implements `IAtcRunStatusReadable & IAtcFindings & IAtcResultsReadable` (the results SAP keeps by Display ID: `listResults`, `getResult`), 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.
|
|
1394
1394
|
|
|
1395
1395
|
**A guard keeps this true.** `src/__tests__/unit/capabilities/` compares what every factory answers (its class, since 38.0.0) against the atoms in both directions at compile time, refuses a public method of `AdtUtils`, `AdtFeatureToggle` or `AdtServiceBinding` that no interfaces-adt atom declares, 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`; the legacy package runs the same guard over `AdtClientLegacy`; the runtime accessors are pinned by `src/__tests__/unit/clients/AdtRuntimeClient.factory.test.ts`.
|
|
1396
1396
|
|
|
@@ -147,6 +147,7 @@ export declare const ACCEPT_ATC_RUN_RESPONSE = "application/xml";
|
|
|
147
147
|
export declare const ACCEPT_ATC_RUN_STATUS = "application/vnd.sap.adt.backgroundrun.v1+xml";
|
|
148
148
|
export declare const ACCEPT_ATC_WORKLIST_XML = "application/atc.worklist.v1+xml, application/vnd.sap.atc.worklist.v1+xml";
|
|
149
149
|
export declare const ACCEPT_ATC_CUSTOMIZING = "application/xml, application/vnd.sap.atc.customizing-v1+xml, application/vnd.sap.atc.customizing-v2+xml";
|
|
150
|
+
export declare const ACCEPT_ATC_RESULTS = "application/xml";
|
|
150
151
|
export declare const ACCEPT_ENHANCEMENT_ELEMENTS = "application/vnd.sap.adt.enhancements.v3+xml";
|
|
151
152
|
export declare const ACCEPT_ENHANCEMENT_OPTIONS = "application/vnd.sap.adt.enhancementoptions.v2+xml";
|
|
152
153
|
export declare const ACCEPT_INCLUDE_MAIN_PROGRAMS = "application/vnd.sap.adt.programs.includes.mainprograms+xml";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contentTypes.d.ts","sourceRoot":"","sources":["../../src/constants/contentTypes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"contentTypes.d.ts","sourceRoot":"","sources":["../../src/constants/contentTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CT_TABLE = exports.ACCEPT_TABLE = exports.CT_FUNCTION_INCLUDE = exports.ACCEPT_FUNCTION_INCLUDE = exports.CT_FUNCTION_MODULE = exports.ACCEPT_FUNCTION_MODULE = exports.CT_FUNCTION_GROUP = exports.ACCEPT_FUNCTION_GROUP = exports.CT_PROGRAM = exports.ACCEPT_PROGRAM = exports.CT_INTERFACE = exports.ACCEPT_INTERFACE = exports.CT_CLASS = exports.ACCEPT_CLASS = exports.ACCEPT_DATA_PREVIEW = exports.CT_WHERE_USED_SCOPE = exports.ACCEPT_WHERE_USED_SCOPE = exports.CT_WHERE_USED_REQUEST = exports.ACCEPT_WHERE_USED_RESULT = exports.CT_VIRTUAL_FOLDERS = exports.ACCEPT_VIRTUAL_FOLDERS = exports.ACCEPT_NODE_STRUCTURE = exports.ACCEPT_TYPE_STRUCTURE = exports.ACCEPT_DISCOVERY = exports.ACCEPT_JUNIT_RESULT = exports.ACCEPT_UNIT_TEST_RESULT = exports.ACCEPT_UNIT_TEST_STATUS = exports.CT_UNIT_TEST_RUN = exports.CT_TRANSPORT_CHECK = exports.ACCEPT_TRANSPORT_CHECK = exports.ACCEPT_TRANSPORT_CONFIGURATIONS = exports.ACCEPT_TRANSPORT_LIST = exports.ACCEPT_TRANSPORT = exports.ACCEPT_PUBLICATION_JOB = exports.ACTIVATION_HEADERS = exports.CHECK_RUN_HEADERS = exports.ACCEPT_VALIDATION = exports.CT_ACTIVATION = exports.ACCEPT_ACTIVATION = exports.CT_DELETION = exports.ACCEPT_DELETION = exports.CT_DELETION_CHECK = exports.ACCEPT_DELETION_CHECK = exports.CT_CHECK_OBJECTS = exports.ACCEPT_CHECK_MESSAGES = exports.ACCEPT_LOCK = exports.CT_SOURCE = exports.ACCEPT_SOURCE_XML_FALLBACK = exports.ACCEPT_SOURCE_UTF8 = exports.ACCEPT_SOURCE = void 0;
|
|
4
4
|
exports.ACCEPT_ABAPGIT_EXTERNAL_REPO_INFO_RESPONSE_V2 = exports.CT_ABAPGIT_EXTERNAL_REPO_INFO_REQUEST_V2 = exports.CT_ABAPGIT_REPO_OBJECT_V2 = exports.ACCEPT_ABAPGIT_REPOS_V2 = exports.MESSAGE_CLASS_UPDATE_CONTENT_TYPE = exports.ACCEPT_FEATURE_TOGGLE_SOURCE = exports.CT_FEATURE_TOGGLE_SOURCE = exports.CT_FEATURE_TOGGLE_TOGGLE_PARAMETERS = exports.CT_FEATURE_TOGGLE_CHECK_PARAMETERS = exports.ACCEPT_FEATURE_TOGGLE_CHECK_RESULT = exports.ACCEPT_FEATURE_TOGGLE_STATES = exports.CT_FEATURE_TOGGLE_METADATA = exports.ACCEPT_FEATURE_TOGGLE_METADATA = exports.ACCEPT_APPLICATION_LOG_SOURCE = exports.ACCEPT_APPLICATION_LOG_OBJECT = exports.ACCEPT_SYSTEM_INFO = exports.CT_TRACE_PARAMETERS = exports.ACCEPT_TRACE_CALLTREE = exports.ACCEPT_TRACE_FEED = exports.ACCEPT_TRACE_XML = exports.ACCEPT_VALIDATION_CLASS_NAME = exports.ENHANCEMENT_CONTENT_TYPES = exports.CT_TRANSFORMATION = exports.ACCEPT_TRANSFORMATION = exports.CT_ACCESS_CONTROL = exports.CT_METADATA_EXTENSION = exports.CT_SERVICE_DEFINITION = exports.CT_BEHAVIOR_DEFINITION = exports.CT_PACKAGE = exports.ACCEPT_PACKAGE = exports.ACCEPT_APPEND_STRUCTURE = exports.CT_SCALAR_FUNCTION_IMPL_SOURCE = exports.ACCEPT_SCALAR_FUNCTION_IMPL_SOURCE = exports.ACCEPT_SCALAR_FUNCTION_IMPL = exports.CT_SCALAR_FUNCTION_IMPL_UPDATE = exports.CT_SCALAR_FUNCTION_IMPL = exports.CT_SCALAR_FUNCTION = exports.ACCEPT_SCALAR_FUNCTION = exports.CT_VIEW = exports.ACCEPT_VIEW_METADATA = exports.ACCEPT_VIEW = exports.CT_STRUCTURE = exports.ACCEPT_STRUCTURE = exports.CT_DATA_ELEMENT = exports.ACCEPT_DATA_ELEMENT = exports.CT_AUTHORIZATION_FIELD = exports.ACCEPT_AUTHORIZATION_FIELD = exports.CT_DOMAIN = exports.ACCEPT_DOMAIN = exports.CT_TABLE_TYPE = void 0;
|
|
5
|
-
exports.ACCEPT_INCLUDE_MAIN_PROGRAMS = exports.ACCEPT_ENHANCEMENT_OPTIONS = exports.ACCEPT_ENHANCEMENT_ELEMENTS = exports.ACCEPT_ATC_CUSTOMIZING = exports.ACCEPT_ATC_WORKLIST_XML = exports.ACCEPT_ATC_RUN_STATUS = exports.ACCEPT_ATC_RUN_RESPONSE = exports.CT_ATC_RUN = exports.ACCEPT_ATC_WORKLIST_ID = exports.CT_ATC_WORKLIST_CREATE = void 0;
|
|
5
|
+
exports.ACCEPT_INCLUDE_MAIN_PROGRAMS = exports.ACCEPT_ENHANCEMENT_OPTIONS = exports.ACCEPT_ENHANCEMENT_ELEMENTS = exports.ACCEPT_ATC_RESULTS = exports.ACCEPT_ATC_CUSTOMIZING = exports.ACCEPT_ATC_WORKLIST_XML = exports.ACCEPT_ATC_RUN_STATUS = exports.ACCEPT_ATC_RUN_RESPONSE = exports.CT_ATC_RUN = exports.ACCEPT_ATC_WORKLIST_ID = exports.CT_ATC_WORKLIST_CREATE = void 0;
|
|
6
6
|
/**
|
|
7
7
|
* Centralized ADT content type constants
|
|
8
8
|
*
|
|
@@ -224,6 +224,10 @@ exports.ACCEPT_ATC_RUN_RESPONSE = 'application/xml';
|
|
|
224
224
|
exports.ACCEPT_ATC_RUN_STATUS = 'application/vnd.sap.adt.backgroundrun.v1+xml';
|
|
225
225
|
exports.ACCEPT_ATC_WORKLIST_XML = 'application/atc.worklist.v1+xml, application/vnd.sap.atc.worklist.v1+xml';
|
|
226
226
|
exports.ACCEPT_ATC_CUSTOMIZING = 'application/xml, application/vnd.sap.atc.customizing-v1+xml, application/vnd.sap.atc.customizing-v2+xml';
|
|
227
|
+
// The results by Display ID: discovery declares no `app:accept` on either
|
|
228
|
+
// collection, and both answered `application/xml` on premise and on the cloud
|
|
229
|
+
// (2026-11-02).
|
|
230
|
+
exports.ACCEPT_ATC_RESULTS = 'application/xml';
|
|
227
231
|
// Enhancement hosts
|
|
228
232
|
exports.ACCEPT_ENHANCEMENT_ELEMENTS = 'application/vnd.sap.adt.enhancements.v3+xml';
|
|
229
233
|
exports.ACCEPT_ENHANCEMENT_OPTIONS = 'application/vnd.sap.adt.enhancementoptions.v2+xml';
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* ATC check runs: the check variant, a worklist, the run, its status, its
|
|
3
3
|
* findings — one request each.
|
|
4
4
|
*
|
|
5
|
-
*
|
|
5
|
+
* Four contract capabilities and two members of its own. A check run is not
|
|
6
6
|
* created, updated, locked, activated or versioned — it is run, and then read.
|
|
7
7
|
*
|
|
8
8
|
* **Nothing here reads a verdict into an answer.** Each answer a run depends on
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* `@mcp-abap-adt/adt-strategies`; none of them defaults a missing value, so a
|
|
16
16
|
* missing `FINDING_STATS` never becomes a confident `"0,0,0"`.
|
|
17
17
|
*/
|
|
18
|
-
import { type IAdtAnalyseOptions, type IAdtError, type IAdtResponse, type IAtcFindings, type IAtcRunOptions, type IAtcRunStatusReadable, type IAtcRunTarget, type IResultStrategy } from '@mcp-abap-adt/interfaces-adt';
|
|
18
|
+
import { type IAdtAnalyseOptions, type IAdtError, type IAdtResponse, type IAtcFindings, type IAtcResultListOptions, type IAtcResultsReadable, type IAtcRunOptions, type IAtcRunStatusReadable, type IAtcRunTarget, type IResultStrategy } from '@mcp-abap-adt/interfaces-adt';
|
|
19
19
|
import type { IAbapConnection } from '@mcp-abap-adt/interfaces-adt-connection';
|
|
20
20
|
import type { AdtLoggedOptions } from '../../core/shared/handlerOptions';
|
|
21
21
|
import { type ResultStrategiesOf, type ResultValuesOf } from '../../utils/resultStrategy';
|
|
@@ -39,6 +39,10 @@ export interface IAtcResults {
|
|
|
39
39
|
readonly runStatus: IResultStrategy<unknown>;
|
|
40
40
|
/** The worklist — `getFindings`. */
|
|
41
41
|
readonly findings: IResultStrategy<unknown>;
|
|
42
|
+
/** `/atc/results`, `atcresult:resultList` without objects — `listResults`. */
|
|
43
|
+
readonly resultList: IResultStrategy<unknown>;
|
|
44
|
+
/** `/atc/results/{displayId}`, one result with its objects — `getResult`. */
|
|
45
|
+
readonly result: IResultStrategy<unknown>;
|
|
42
46
|
}
|
|
43
47
|
/**
|
|
44
48
|
* The shipped default: every member answers its document as it arrived.
|
|
@@ -53,6 +57,8 @@ export declare const atcDocuments: {
|
|
|
53
57
|
waitingRun: IResultStrategy<string>;
|
|
54
58
|
runStatus: IResultStrategy<string>;
|
|
55
59
|
findings: IResultStrategy<string>;
|
|
60
|
+
resultList: IResultStrategy<string>;
|
|
61
|
+
result: IResultStrategy<string>;
|
|
56
62
|
};
|
|
57
63
|
/** What each slot of the result set answers. */
|
|
58
64
|
export type AtcValues = {
|
|
@@ -64,7 +70,7 @@ export type AtcValues = {
|
|
|
64
70
|
* A member that made all three chose the order and denied the caller a worklist
|
|
65
71
|
* they could reuse. The atom stays in the contract for whoever composes them.
|
|
66
72
|
*/
|
|
67
|
-
export declare class AdtAtc<T extends AtcValues = ResultValuesOf<typeof atcDocuments>> implements IAtcRunStatusReadable<T['runStatus']>, IAtcFindings<T['findings']> {
|
|
73
|
+
export declare class AdtAtc<T extends AtcValues = ResultValuesOf<typeof atcDocuments>> implements IAtcRunStatusReadable<T['runStatus']>, IAtcFindings<T['findings']>, IAtcResultsReadable<T['resultList'], T['result']> {
|
|
68
74
|
private readonly connection;
|
|
69
75
|
private readonly results;
|
|
70
76
|
private readonly logger;
|
|
@@ -92,6 +98,21 @@ export declare class AdtAtc<T extends AtcValues = ResultValuesOf<typeof atcDocum
|
|
|
92
98
|
startRun<E extends IAdtError = IAdtError>(worklistId: string, target: IAtcRunTarget, options?: IAtcRunOptions & IAdtAnalyseOptions<E>): Promise<IAdtResponse<T['waitingRun'] | T['startedRun'], E>>;
|
|
93
99
|
getRunStatus<E extends IAdtError = IAdtError>(runId: string, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<T['runStatus'], E>>;
|
|
94
100
|
getFindings<E extends IAdtError = IAdtError>(worklistId: string, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<T['findings'], E>>;
|
|
101
|
+
/**
|
|
102
|
+
* The results SAP holds for `createdBy` — `/atc/results`.
|
|
103
|
+
*
|
|
104
|
+
* One request, with only the parameters given (see `listAtcResults`).
|
|
105
|
+
* `createdBy` is required by the type; an empty one, or one of spaces only,
|
|
106
|
+
* is refused before any request, since SAP matches nobody for it.
|
|
107
|
+
*/
|
|
108
|
+
listResults<E extends IAdtError = IAdtError>(options: IAtcResultListOptions & IAdtAnalyseOptions<E>): Promise<IAdtResponse<T['resultList'], E>>;
|
|
109
|
+
/**
|
|
110
|
+
* One result by its Display ID — `/atc/results/{displayId}`.
|
|
111
|
+
*
|
|
112
|
+
* One request; the Display ID is URI-encoded. The answer holds the result's
|
|
113
|
+
* objects and their findings.
|
|
114
|
+
*/
|
|
115
|
+
getResult<E extends IAdtError = IAdtError>(displayId: string, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<T['result'], E>>;
|
|
95
116
|
/**
|
|
96
117
|
* ATC customizing, which carries the system's check variant —
|
|
97
118
|
* `/atc/customizing`.
|
|
@@ -121,6 +142,7 @@ export declare class AdtAtc<T extends AtcValues = ResultValuesOf<typeof atcDocum
|
|
|
121
142
|
*/
|
|
122
143
|
createWorklist<E extends IAdtError = IAdtError>(checkVariant: string, options?: IAdtAnalyseOptions<E>): Promise<IAdtResponse<T['worklist'], E>>;
|
|
123
144
|
private assertTarget;
|
|
145
|
+
private assertCreatedBy;
|
|
124
146
|
private assertMaximumVerdicts;
|
|
125
147
|
}
|
|
126
148
|
//# sourceMappingURL=AdtAtc.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdtAtc.d.ts","sourceRoot":"","sources":["../../../src/runtime/atc/AdtAtc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,eAAe,EACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAE/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAGzE,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,cAAc,EAEpB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"AdtAtc.d.ts","sourceRoot":"","sources":["../../../src/runtime/atc/AdtAtc.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* ATC check runs: the check variant, a worklist, the run, its status, its
|
|
4
4
|
* findings — one request each.
|
|
5
5
|
*
|
|
6
|
-
*
|
|
6
|
+
* Four contract capabilities and two members of its own. A check run is not
|
|
7
7
|
* created, updated, locked, activated or versioned — it is run, and then read.
|
|
8
8
|
*
|
|
9
9
|
* **Nothing here reads a verdict into an answer.** Each answer a run depends on
|
|
@@ -22,6 +22,7 @@ const interfaces_adt_1 = require("@mcp-abap-adt/interfaces-adt");
|
|
|
22
22
|
const adtErrors_1 = require("../../utils/adtErrors");
|
|
23
23
|
const adtResponse_1 = require("../../utils/adtResponse");
|
|
24
24
|
const resultStrategy_1 = require("../../utils/resultStrategy");
|
|
25
|
+
const results_1 = require("./results");
|
|
25
26
|
const run_1 = require("./run");
|
|
26
27
|
/** The default cap on results, and the only value anyone has run with. */
|
|
27
28
|
const DEFAULT_MAXIMUM_VERDICTS = 100;
|
|
@@ -38,6 +39,8 @@ exports.atcDocuments = {
|
|
|
38
39
|
waitingRun: resultStrategy_1.rawDocument,
|
|
39
40
|
runStatus: resultStrategy_1.rawDocument,
|
|
40
41
|
findings: resultStrategy_1.rawDocument,
|
|
42
|
+
resultList: resultStrategy_1.rawDocument,
|
|
43
|
+
result: resultStrategy_1.rawDocument,
|
|
41
44
|
};
|
|
42
45
|
/**
|
|
43
46
|
* **Not `IAdtRunnable` since 19.0.0.** That atom's `run` is one call, and an
|
|
@@ -71,6 +74,26 @@ class AdtAtc {
|
|
|
71
74
|
async getFindings(worklistId, options) {
|
|
72
75
|
return (0, adtResponse_1.answering)(() => (0, run_1.getAtcWorklist)(this.connection, worklistId), this.results.findings, options?.analyse);
|
|
73
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* The results SAP holds for `createdBy` — `/atc/results`.
|
|
79
|
+
*
|
|
80
|
+
* One request, with only the parameters given (see `listAtcResults`).
|
|
81
|
+
* `createdBy` is required by the type; an empty one, or one of spaces only,
|
|
82
|
+
* is refused before any request, since SAP matches nobody for it.
|
|
83
|
+
*/
|
|
84
|
+
async listResults(options) {
|
|
85
|
+
this.assertCreatedBy(options.createdBy);
|
|
86
|
+
return (0, adtResponse_1.answering)(() => (0, results_1.listAtcResults)(this.connection, options), this.results.resultList, options.analyse);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* One result by its Display ID — `/atc/results/{displayId}`.
|
|
90
|
+
*
|
|
91
|
+
* One request; the Display ID is URI-encoded. The answer holds the result's
|
|
92
|
+
* objects and their findings.
|
|
93
|
+
*/
|
|
94
|
+
async getResult(displayId, options) {
|
|
95
|
+
return (0, adtResponse_1.answering)(() => (0, results_1.getAtcResult)(this.connection, displayId), this.results.result, options?.analyse);
|
|
96
|
+
}
|
|
74
97
|
/**
|
|
75
98
|
* ATC customizing, which carries the system's check variant —
|
|
76
99
|
* `/atc/customizing`.
|
|
@@ -113,6 +136,13 @@ class AdtAtc {
|
|
|
113
136
|
throw error;
|
|
114
137
|
}
|
|
115
138
|
}
|
|
139
|
+
assertCreatedBy(createdBy) {
|
|
140
|
+
if (createdBy.trim() === '') {
|
|
141
|
+
const error = new adtErrors_1.AdtOperationError('createdBy must name a user, or * for every user: SAP matches nobody for an empty one.');
|
|
142
|
+
error.code = interfaces_adt_1.AdtObjectErrorCodes.VALIDATION_FAILED;
|
|
143
|
+
throw error;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
116
146
|
assertMaximumVerdicts(value) {
|
|
117
147
|
if (!Number.isInteger(value) || value < 1) {
|
|
118
148
|
const error = new adtErrors_1.AdtOperationError(`maximumVerdicts must be a positive integer, got ${value}. The server answers 0 with a 400, and a client that can name the problem should not spend a round trip being told.`);
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ATC results by Display ID: the list of results SAP holds, and one result.
|
|
3
|
+
*
|
|
4
|
+
* Measured on premise and on the cloud (2026-11-02). Both answer
|
|
5
|
+
* `application/xml`, an `atcresult:resultList`: the list carries no objects,
|
|
6
|
+
* one result carries its objects and their findings in the worklist's shape.
|
|
7
|
+
* See `docs/superpowers/2026-11-02-atc-results-spec.md` in mcp-abap-adt for
|
|
8
|
+
* the measured table.
|
|
9
|
+
*/
|
|
10
|
+
import type { IAtcResultListOptions } from '@mcp-abap-adt/interfaces-adt';
|
|
11
|
+
import type { IAbapConnection, IAdtWireResponse } from '@mcp-abap-adt/interfaces-adt-connection';
|
|
12
|
+
/**
|
|
13
|
+
* The results whose creator is `createdBy` — `GET /atc/results`.
|
|
14
|
+
*
|
|
15
|
+
* Only the parameters given are sent. `centralOnly: true` sends
|
|
16
|
+
* `centralResult=true` (central results only); without it the list holds
|
|
17
|
+
* every kind. Without ages SAP applies a window of its own. `createdBy` is
|
|
18
|
+
* `*` for every user; a kind without it matches nobody, and no parameter at
|
|
19
|
+
* all is a `400` (SADT_RESOURCE 017).
|
|
20
|
+
*/
|
|
21
|
+
export declare function listAtcResults(connection: IAbapConnection, options: IAtcResultListOptions): Promise<IAdtWireResponse>;
|
|
22
|
+
/**
|
|
23
|
+
* One result by its Display ID — `GET /atc/results/{displayId}`.
|
|
24
|
+
*
|
|
25
|
+
* The same `resultList`, holding one `result` with its `objects` and their
|
|
26
|
+
* findings. An unknown Display ID is `404 ExceptionResourceNotFound`.
|
|
27
|
+
*/
|
|
28
|
+
export declare function getAtcResult(connection: IAbapConnection, displayId: string): Promise<IAdtWireResponse>;
|
|
29
|
+
//# sourceMappingURL=results.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../../../src/runtime/atc/results.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,yCAAyC,CAAC;AAKjD;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,UAAU,EAAE,eAAe,EAC3B,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CAW3B;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,eAAe,EAC3B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,gBAAgB,CAAC,CAO3B"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ATC results by Display ID: the list of results SAP holds, and one result.
|
|
4
|
+
*
|
|
5
|
+
* Measured on premise and on the cloud (2026-11-02). Both answer
|
|
6
|
+
* `application/xml`, an `atcresult:resultList`: the list carries no objects,
|
|
7
|
+
* one result carries its objects and their findings in the worklist's shape.
|
|
8
|
+
* See `docs/superpowers/2026-11-02-atc-results-spec.md` in mcp-abap-adt for
|
|
9
|
+
* the measured table.
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.listAtcResults = listAtcResults;
|
|
13
|
+
exports.getAtcResult = getAtcResult;
|
|
14
|
+
const contentTypes_1 = require("../../constants/contentTypes");
|
|
15
|
+
const RESULTS = '/sap/bc/adt/atc/results';
|
|
16
|
+
/**
|
|
17
|
+
* The results whose creator is `createdBy` — `GET /atc/results`.
|
|
18
|
+
*
|
|
19
|
+
* Only the parameters given are sent. `centralOnly: true` sends
|
|
20
|
+
* `centralResult=true` (central results only); without it the list holds
|
|
21
|
+
* every kind. Without ages SAP applies a window of its own. `createdBy` is
|
|
22
|
+
* `*` for every user; a kind without it matches nobody, and no parameter at
|
|
23
|
+
* all is a `400` (SADT_RESOURCE 017).
|
|
24
|
+
*/
|
|
25
|
+
async function listAtcResults(connection, options) {
|
|
26
|
+
const query = new URLSearchParams({ createdBy: options.createdBy });
|
|
27
|
+
if (options.centralOnly === true)
|
|
28
|
+
query.set('centralResult', 'true');
|
|
29
|
+
if (options.ageMin !== undefined)
|
|
30
|
+
query.set('ageMin', String(options.ageMin));
|
|
31
|
+
if (options.ageMax !== undefined)
|
|
32
|
+
query.set('ageMax', String(options.ageMax));
|
|
33
|
+
return connection.makeAdtRequest({
|
|
34
|
+
url: `${RESULTS}?${query}`,
|
|
35
|
+
method: 'GET',
|
|
36
|
+
timeout: 0,
|
|
37
|
+
headers: { Accept: contentTypes_1.ACCEPT_ATC_RESULTS },
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* One result by its Display ID — `GET /atc/results/{displayId}`.
|
|
42
|
+
*
|
|
43
|
+
* The same `resultList`, holding one `result` with its `objects` and their
|
|
44
|
+
* findings. An unknown Display ID is `404 ExceptionResourceNotFound`.
|
|
45
|
+
*/
|
|
46
|
+
async function getAtcResult(connection, displayId) {
|
|
47
|
+
return connection.makeAdtRequest({
|
|
48
|
+
url: `${RESULTS}/${encodeURIComponent(displayId)}`,
|
|
49
|
+
method: 'GET',
|
|
50
|
+
timeout: 0,
|
|
51
|
+
headers: { Accept: contentTypes_1.ACCEPT_ATC_RESULTS },
|
|
52
|
+
});
|
|
53
|
+
}
|
|
@@ -246,7 +246,7 @@ Classes under `src/runtime/`. Most are handed out by `AdtRuntimeClient`; a class
|
|
|
246
246
|
|
|
247
247
|
### AdtAtc
|
|
248
248
|
- Source: `src/runtime/atc/AdtAtc.ts`
|
|
249
|
-
- Public methods: `createWorklist`, `getFindings`, `getRunStatus`, `listCheckVariants`, `resolveCheckVariant`, `startRun`
|
|
249
|
+
- Public methods: `createWorklist`, `getFindings`, `getResult`, `getRunStatus`, `listCheckVariants`, `listResults`, `resolveCheckVariant`, `startRun`
|
|
250
250
|
|
|
251
251
|
### AmdpDebugger
|
|
252
252
|
- Source: `src/runtime/debugger/AmdpDebugger.ts`
|
|
@@ -2197,6 +2197,35 @@ library had failed. The readings now answer `''` for what is not there
|
|
|
2197
2197
|
look for it before the next step. The outcome to guard against on an
|
|
2198
2198
|
unfamiliar system is a confident zero that reads exactly like a clean check.
|
|
2199
2199
|
|
|
2200
|
+
**Results that already exist: `listResults(options)` and `getResult(displayId)`**
|
|
2201
|
+
(42.1.0, `IAtcResultsReadable` of `interfaces-adt` 25.1.0). SAP keeps every
|
|
2202
|
+
run's result under a Display ID — the server's own runs, a person's in ADT, a
|
|
2203
|
+
central run. Each member is one `GET`, answered through its slot
|
|
2204
|
+
(`resultList`, `result`; the document as it came by default).
|
|
2205
|
+
|
|
2206
|
+
- `listResults({ createdBy, centralOnly?, ageMin?, ageMax? })` —
|
|
2207
|
+
`/atc/results`. `createdBy` is required: a user name, or `*` for every user;
|
|
2208
|
+
an empty one is refused before the request, since SAP matches nobody for
|
|
2209
|
+
it. `centralOnly: true` sends `centralResult=true`; without it the list
|
|
2210
|
+
holds every kind. `ageMin` / `ageMax` are days. Without them SAP applies a
|
|
2211
|
+
window of its own, which listed 26 central results on premise one day and
|
|
2212
|
+
none the next (2026-11-02, 2026-11-03): state the ages for a list you can
|
|
2213
|
+
rely on. Each entry carries its Display ID, title, check variant, run
|
|
2214
|
+
series, creation time and counts; no objects.
|
|
2215
|
+
- `getResult(displayId)` — `/atc/results/{displayId}`: the same `resultList`
|
|
2216
|
+
holding one result with its objects and their findings, in the worklist's
|
|
2217
|
+
shape. An unknown Display ID is `404`.
|
|
2218
|
+
|
|
2219
|
+
```typescript
|
|
2220
|
+
const list = await atc.listResults({
|
|
2221
|
+
createdBy: '*',
|
|
2222
|
+
centralOnly: true,
|
|
2223
|
+
ageMin: 0,
|
|
2224
|
+
ageMax: 30,
|
|
2225
|
+
});
|
|
2226
|
+
const one = await atc.getResult('E6AC99B2161F1FE1B5A1E9B68E5CD628');
|
|
2227
|
+
```
|
|
2228
|
+
|
|
2200
2229
|
### ATC Log
|
|
2201
2230
|
|
|
2202
2231
|
Different resources, same subject: `getAtcLog()` reads the execution log and the
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mcp-abap-adt/adt-clients",
|
|
3
|
-
"version": "42.
|
|
3
|
+
"version": "42.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",
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
"node": ">=18.0.0"
|
|
117
117
|
},
|
|
118
118
|
"dependencies": {
|
|
119
|
-
"@mcp-abap-adt/interfaces-adt": "^25.0
|
|
119
|
+
"@mcp-abap-adt/interfaces-adt": "^25.1.0",
|
|
120
120
|
"@mcp-abap-adt/interfaces-adt-connection": "^3.0.0",
|
|
121
121
|
"@mcp-abap-adt/interfaces-network": "^2.0.1",
|
|
122
122
|
"@mcp-abap-adt/interfaces-utils": "^1.1.1",
|