arc-1 1.1.0 → 1.1.1

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
@@ -29,7 +29,7 @@ Built for organizations that need AI-assisted SAP development with guardrails. I
29
29
  - **HTTP security headers (helmet) on by default** — HSTS, CSP, X-Frame-Options, CORP, X-Content-Type-Options. COOP is deliberately not set so popup-based OAuth flows (Copilot Studio) keep working. No flag to disable.
30
30
  - **Opt-in CORS for browser MCP clients** — `ARC1_ALLOWED_ORIGINS` (comma-separated, exact match). Off by default; native MCP clients don't need it
31
31
  - **Layered rate limiting** — three layers out of the box: per-IP OAuth and shared MCP HTTP edge limits (Layer 1; MCP inherits the historical derived cap unless `ARC1_MCP_HTTP_RATE_LIMIT` overrides it), per-user MCP quota (Layer 2, **off by default** — multi-user deployments opt in via `ARC1_RATE_LIMIT=60`), and a server-wide SAP-bound semaphore (Layer 3, default 10, **on**). Honors `Retry-After` on 429/503 from SAP / BTP gateways. See the [Rate Limiting Guide](https://docs.arc-1-mcp.com/rate-limiting/)
32
- - **Supply-chain security** — Dependabot (npm + GitHub Actions + Docker, weekly + same-day security advisories), `npm audit --audit-level=high` PR gate, GitHub Dependency Review on every PR, CodeQL SAST, Trivy container scanning (gating on release, advisory on dev), all third-party GitHub Actions pinned to commit SHA, [`SECURITY.md`](SECURITY.md) policy with severity-tiered SLAs. Image and npm package both ship with [provenance attestations](https://docs.npmjs.com/generating-provenance-statements), and the release workflow publishes a best-effort CycloneDX SBOM for the production npm dependency graph. See the [security guide §13](https://docs.arc-1-mcp.com/security-guide/#13-dependency--supply-chain-security)
32
+ - **Supply-chain security** — Dependabot (npm + GitHub Actions + Docker, weekly + same-day security advisories), `npm audit --audit-level=high` PR gate, GitHub Dependency Review on every PR, CodeQL SAST, Trivy container scanning (scheduled multi-architecture HIGH/CRITICAL gate plus advisory release/dev scans), all third-party GitHub Actions pinned to commit SHA, [`SECURITY.md`](SECURITY.md) policy with severity-tiered SLAs. Image and npm package both ship with [provenance attestations](https://docs.npmjs.com/generating-provenance-statements), and the release workflow publishes a best-effort CycloneDX SBOM for the production npm dependency graph. See the [security guide §13](https://docs.arc-1-mcp.com/security-guide/#13-dependency--supply-chain-security)
33
33
 
34
34
  ### Authentication
35
35
 
@@ -145,6 +145,19 @@ What changed per release: the annotated [Release Notes](https://docs.arc-1-mcp.c
145
145
 
146
146
  ## Quick Start
147
147
 
148
+ **Install as an Agent Plugin** — one portable install for the MCP server and all bundled SAP skills in
149
+ GitHub Copilot, VS Code, Cursor, Codex, and other compatible clients:
150
+
151
+ ```bash
152
+ copilot plugin marketplace add arc-mcp/arc-1
153
+ copilot plugin install arc-1@arc-1
154
+ ```
155
+
156
+ Agent Plugins 1.0 does not define secret prompts, so create the ARC-1 `.env` in the installed
157
+ plugin's persistent data directory before connecting to SAP. See the
158
+ **[Agent Plugin guide](https://docs.arc-1-mcp.com/agent-plugin/)** for client-specific installation,
159
+ safe configuration, and verification.
160
+
148
161
  **Install in Claude** — pick your surface (full guide: [Install in Claude](https://docs.arc-1-mcp.com/install-in-claude/)):
149
162
 
150
163
  - **Claude Desktop** — download the latest `arc-1-*.mcpb` from [Releases](https://github.com/arc-mcp/arc-1/releases) and double-click it (or Settings → Extensions). Claude prompts for your SAP connection. (The `.mcpb` is attached to releases automatically; if the newest one doesn't have it yet, see [Install in Claude](https://docs.arc-1-mcp.com/install-in-claude/).)
@@ -186,6 +199,7 @@ Full documentation is available at **[docs.arc-1-mcp.com](https://docs.arc-1-mcp
186
199
  | Guide | Description |
187
200
  |-------|-------------|
188
201
  | [Quickstart](https://docs.arc-1-mcp.com/quickstart/) | 5-minute npx + Claude Desktop setup |
202
+ | [Agent Plugin](https://docs.arc-1-mcp.com/agent-plugin/) | Portable server + all skills for Copilot, VS Code, Cursor, Codex, and compatible clients |
189
203
  | [Install in Claude](https://docs.arc-1-mcp.com/install-in-claude/) | Desktop `.mcpb`, Claude Code plugin (server + skills), and remote BTP connector |
190
204
  | [Local Development](https://docs.arc-1-mcp.com/local-development/) | Full local dev — all install methods, MCP client configs, SSO cookie extractor |
191
205
  | [Deployment](https://docs.arc-1-mcp.com/deployment/) | Multi-user deployment — Docker, BTP Cloud Foundry, BTP ABAP |
package/dist/adt/atc.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  /** ABAP Test Cockpit worklist execution and completeness-aware parsing. */
2
2
  import type { AdtHttpClient } from './http.js';
3
+ import type { AdtRequestOptions } from './http-deadline.js';
3
4
  import { type SafetyConfig } from './safety.js';
4
5
  import { type NamedItem } from './xml-parser.js';
5
6
  export interface AtcFinding {
@@ -11,10 +12,19 @@ export interface AtcFinding {
11
12
  quickfixInfo?: string;
12
13
  hasQuickfix?: boolean;
13
14
  }
15
+ /**
16
+ * How the check variant bound at worklist creation was chosen.
17
+ *
18
+ * `requestedUnverified` = the caller named it, but `/atc/variants` was unreachable, so ARC-1 could
19
+ * not confirm SAP will honour the name rather than silently substituting `DEFAULT`.
20
+ */
21
+ export type AtcVariantSource = 'requested' | 'requestedUnverified' | 'systemDefault' | 'sapFallback';
14
22
  export interface AtcRunResult {
15
23
  findings: AtcFinding[];
16
24
  worklistId: string;
25
+ /** The variant actually bound at worklist creation; null only when none could be sent. */
17
26
  variant: string | null;
27
+ variantSource: AtcVariantSource;
18
28
  maximumVerdicts: number;
19
29
  expectedFindingCount: number | null;
20
30
  findingCount: number;
@@ -41,9 +51,9 @@ export interface AtcPollOptions {
41
51
  signal?: AbortSignal;
42
52
  }
43
53
  /** List the valid ATC check variants. */
44
- export declare function listAtcVariants(http: AdtHttpClient, safety: SafetyConfig, filter?: string): Promise<NamedItem[]>;
54
+ export declare function listAtcVariants(http: AdtHttpClient, safety: SafetyConfig, filter?: string, options?: AdtRequestOptions): Promise<NamedItem[]>;
45
55
  /** Read the system default ATC check variant. */
46
- export declare function getAtcSystemDefaultVariant(http: AdtHttpClient, safety: SafetyConfig): Promise<string | undefined>;
56
+ export declare function getAtcSystemDefaultVariant(http: AdtHttpClient, safety: SafetyConfig, options?: AdtRequestOptions): Promise<string | undefined>;
47
57
  /** Run an ATC worklist and preserve the evidence required for a CI verdict. */
48
58
  export declare function runAtcCheck(http: AdtHttpClient, safety: SafetyConfig, objectUrl: string, variant?: string, pollOptions?: AtcPollOptions): Promise<AtcRunResult>;
49
59
  //# sourceMappingURL=atc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"atc.d.ts","sourceRoot":"","sources":["../../src/adt/atc.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAG3E,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,WAAW,CAAC;AAG5D,OAAO,EAAiC,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAiB,KAAK,SAAS,EAAyD,MAAM,iBAAiB,CAAC;AAEvH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,mBAAmB,EAAE,OAAO,GAAG,IAAI,CAAC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAMD,yCAAyC;AACzC,wBAAsB,eAAe,CAAC,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,SAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAOnH;AAED,iDAAiD;AACjD,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAI7B;AAED,+EAA+E;AAC/E,wBAAsB,WAAW,CAC/B,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,WAAW,GAAE,cAAmB,GAC/B,OAAO,CAAC,YAAY,CAAC,CA8FvB"}
1
+ {"version":3,"file":"atc.d.ts","sourceRoot":"","sources":["../../src/adt/atc.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAG3E,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,WAAW,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,EAAiC,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAiB,KAAK,SAAS,EAAyD,MAAM,iBAAiB,CAAC;AAEvH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;;;;GAKG;AACH,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,qBAAqB,GAAG,eAAe,GAAG,aAAa,CAAC;AAErG,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,0FAA0F;IAC1F,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,gBAAgB,CAAC;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,mBAAmB,EAAE,OAAO,GAAG,IAAI,CAAC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAwBD,yCAAyC;AACzC,wBAAsB,eAAe,CACnC,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,YAAY,EACpB,MAAM,SAAM,EACZ,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,SAAS,EAAE,CAAC,CAStB;AAED,iDAAiD;AACjD,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAI7B;AAsDD,+EAA+E;AAC/E,wBAAsB,WAAW,CAC/B,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,WAAW,GAAE,cAAmB,GAC/B,OAAO,CAAC,YAAY,CAAC,CA8HvB"}
package/dist/adt/atc.js CHANGED
@@ -6,21 +6,77 @@ import { escapeXmlAttr, parseAtcSystemCheckVariant, parseNamedItems, parseXml }
6
6
  const DEFAULT_ATC_TIMEOUT_MS = 300_000;
7
7
  const DEFAULT_ATC_POLL_DELAY_MS = 250;
8
8
  const DEFAULT_ATC_MAX_POLL_DELAY_MS = 2_000;
9
+ /**
10
+ * Minimum continuous quiet interval before an unchanged worklist is considered settled.
11
+ *
12
+ * A live 758 worklist grew from 23 findings/two objects to 73/ten after already reporting
13
+ * `objectSetIsComplete=true`, so neither that flag nor a few fast count snapshots are terminal
14
+ * evidence. Ten seconds spans at least five intervals at the default 2 s backoff cap. SAP also
15
+ * advances the root worklist timestamp on unchanged GETs, so that proven volatile attribute is
16
+ * excluded from the comparison.
17
+ * See docs/research/2026-08-20-atc-completeness-polling.md.
18
+ */
19
+ const ATC_SETTLE_QUIET_MS = 10_000;
20
+ /** Compare the complete wire response except SAP's per-GET root worklist timestamp. */
21
+ function atcWorklistSettleObservation(xml) {
22
+ return xml.replace(/<(?:[A-Za-z_][\w.-]*:)?worklist\b[^>]*>/, (rootStart) => rootStart.replace(/\s+(?:[A-Za-z_][\w.-]*:)?timestamp\s*=\s*(?:"[^"]*"|'[^']*')/, ''));
23
+ }
9
24
  /** List the valid ATC check variants. */
10
- export async function listAtcVariants(http, safety, filter = '*') {
25
+ export async function listAtcVariants(http, safety, filter = '*', options) {
11
26
  checkOperation(safety, OperationType.Read, 'ListAtcVariants');
12
27
  const pattern = filter.trim() || '*';
13
- const resp = await http.get(`/sap/bc/adt/atc/variants?name=${encodeURIComponent(pattern)}`, {
14
- Accept: 'application/vnd.sap.adt.nameditems.v1+xml',
15
- });
28
+ const resp = await http.get(`/sap/bc/adt/atc/variants?name=${encodeURIComponent(pattern)}`, { Accept: 'application/vnd.sap.adt.nameditems.v1+xml' }, options);
16
29
  return parseNamedItems(resp.body).filter((item) => item.name);
17
30
  }
18
31
  /** Read the system default ATC check variant. */
19
- export async function getAtcSystemDefaultVariant(http, safety) {
32
+ export async function getAtcSystemDefaultVariant(http, safety, options) {
20
33
  checkOperation(safety, OperationType.Read, 'GetAtcCustomizing');
21
- const resp = await http.get('/sap/bc/adt/atc/customizing', { Accept: 'application/xml' });
34
+ const resp = await http.get('/sap/bc/adt/atc/customizing', { Accept: 'application/xml' }, options);
22
35
  return parseAtcSystemCheckVariant(resp.body);
23
36
  }
37
+ /**
38
+ * Decide which check variant to bind at worklist creation.
39
+ *
40
+ * SAP does NOT apply `systemCheckVariant` when `checkVariant` is empty — it runs the Code Inspector
41
+ * variant literally named `DEFAULT` (measured on two independent 758 systems; see
42
+ * docs/research/2026-08-19-atc-default-check-variant.md). SAP's own adt-ls resolves the default
43
+ * client-side too, so ARC-1 sends it explicitly.
44
+ *
45
+ * Runs under the caller's ATC request budget (`requestOptions`) — these pre-flight GETs must honour
46
+ * the same deadline and abort signal as the worklist calls.
47
+ */
48
+ async function resolveCheckVariant(http, safety, requestedRaw, requestOptions) {
49
+ const requested = requestedRaw?.trim() ? requestedRaw.trim() : undefined;
50
+ if (requested) {
51
+ // An unknown name is not rejected by SAP — the worklist silently binds DEFAULT and the run looks
52
+ // successful. Fail open: a validation lookup must never break a working ATC run.
53
+ let known;
54
+ try {
55
+ known = await listAtcVariants(http, safety, requested, requestOptions);
56
+ }
57
+ catch {
58
+ // best-effort-validation: endpoint absent, auth, or network — run with the caller's string,
59
+ // but say so: SAP may still substitute DEFAULT and we did not get to check.
60
+ return { variant: requested, variantSource: 'requestedUnverified' };
61
+ }
62
+ const match = known.find((item) => item.name.toLowerCase() === requested.toLowerCase());
63
+ if (!match) {
64
+ throw new AdtApiError(`Check variant "${requested}" does not exist on this system — SAP would silently run "DEFAULT" instead. ` +
65
+ 'List variants with SAPDiagnose(action="atc_variants").', 400, '/sap/bc/adt/atc/variants');
66
+ }
67
+ // Send the canonical name: SAP's lookup is case-sensitive, so a lowercase input would fall back too.
68
+ return { variant: match.name, variantSource: 'requested' };
69
+ }
70
+ const systemDefault = await getAtcSystemDefaultVariant(http, safety, requestOptions).catch((error) => {
71
+ // Only "endpoint absent / not negotiable" degrades; 401/403/5xx must surface.
72
+ if (error instanceof AdtApiError && (error.statusCode === 404 || error.statusCode === 406))
73
+ return undefined;
74
+ throw error;
75
+ });
76
+ return systemDefault
77
+ ? { variant: systemDefault, variantSource: 'systemDefault' }
78
+ : { variant: undefined, variantSource: 'sapFallback' };
79
+ }
24
80
  /** Run an ATC worklist and preserve the evidence required for a CI verdict. */
25
81
  export async function runAtcCheck(http, safety, objectUrl, variant, pollOptions = {}) {
26
82
  checkOperation(safety, OperationType.Read, 'RunATCCheck');
@@ -32,8 +88,9 @@ export async function runAtcCheck(http, safety, objectUrl, variant, pollOptions
32
88
  fetchTimeoutMs: timeoutMs,
33
89
  signal: pollOptions.signal,
34
90
  };
35
- const worklistPath = variant
36
- ? `/sap/bc/adt/atc/worklists?checkVariant=${encodeURIComponent(variant)}`
91
+ const { variant: effectiveVariant, variantSource } = await resolveCheckVariant(http, safety, variant, requestOptions);
92
+ const worklistPath = effectiveVariant
93
+ ? `/sap/bc/adt/atc/worklists?checkVariant=${encodeURIComponent(effectiveVariant)}`
37
94
  : '/sap/bc/adt/atc/worklists';
38
95
  const worklistResp = await http.post(worklistPath, '', 'application/xml', { Accept: 'text/plain' }, requestOptions);
39
96
  const worklistId = worklistResp.body.trim();
@@ -57,7 +114,7 @@ export async function runAtcCheck(http, safety, objectUrl, variant, pollOptions
57
114
  }
58
115
  catch (error) {
59
116
  if (isAtcDeadlineFailure(error)) {
60
- return incompleteAtcResult(worklistId, variant, maximumVerdicts, null, 0, 'ATC execution timed out.');
117
+ return incompleteAtcResult(worklistId, effectiveVariant, variantSource, maximumVerdicts, null, 0, 'ATC execution timed out.');
61
118
  }
62
119
  throw error;
63
120
  }
@@ -66,6 +123,8 @@ export async function runAtcCheck(http, safety, objectUrl, variant, pollOptions
66
123
  let delayMs = pollOptions.initialDelayMs ?? DEFAULT_ATC_POLL_DELAY_MS;
67
124
  const maxDelayMs = pollOptions.maxDelayMs ?? DEFAULT_ATC_MAX_POLL_DELAY_MS;
68
125
  let result;
126
+ let lastWorklistObservation;
127
+ let unchangedSince;
69
128
  while (true) {
70
129
  let resultResp;
71
130
  try {
@@ -74,21 +133,39 @@ export async function runAtcCheck(http, safety, objectUrl, variant, pollOptions
74
133
  catch (error) {
75
134
  if (isAtcDeadlineFailure(error)) {
76
135
  return (result ??
77
- incompleteAtcResult(worklistId, variant, maximumVerdicts, expectedFindingCount, runResp.statusCode, 'ATC worklist polling timed out before SAP returned the first snapshot.'));
136
+ incompleteAtcResult(worklistId, effectiveVariant, variantSource, maximumVerdicts, expectedFindingCount, runResp.statusCode, 'ATC worklist polling timed out before SAP returned the first snapshot.'));
78
137
  }
79
138
  throw error;
80
139
  }
81
140
  result = parseAtcRunResult(resultResp.body, {
82
141
  worklistId,
83
- variant,
142
+ variant: effectiveVariant,
143
+ variantSource,
84
144
  maximumVerdicts,
85
145
  expectedFindingCount,
86
146
  runStatusCode: runResp.statusCode,
87
147
  });
148
+ // Counts alone miss same-count replacements and other response-evidence changes. Compare the
149
+ // full XML except the root timestamp, which live 758 advances on otherwise identical GETs.
150
+ const observedAt = now();
151
+ const observation = atcWorklistSettleObservation(resultResp.body);
152
+ if (observation !== lastWorklistObservation) {
153
+ lastWorklistObservation = observation;
154
+ unchangedSince = observedAt;
155
+ }
156
+ const unchangedForMs = unchangedSince === undefined ? 0 : observedAt - unchangedSince;
157
+ const settled = unchangedForMs >= ATC_SETTLE_QUIET_MS;
88
158
  if (expectedFindingCount === null ||
89
159
  result.complete ||
90
160
  result.findingCount > expectedFindingCount ||
91
- now() >= deadline) {
161
+ settled ||
162
+ observedAt >= deadline) {
163
+ if (settled && !result.complete) {
164
+ result.incompleteReasons.push(`ATC worklist response, excluding SAP's poll timestamp, was unchanged for at least ` +
165
+ `${ATC_SETTLE_QUIET_MS / 1_000} seconds at ` +
166
+ `${result.findingCount} finding(s) over ${result.processedObjectCount} object(s) without satisfying ` +
167
+ "SAP's completeness evidence; returning the settled result.");
168
+ }
92
169
  return result;
93
170
  }
94
171
  await sleep(Math.min(delayMs, Math.max(0, deadline - now())));
@@ -101,11 +178,12 @@ function isAtcDeadlineFailure(error) {
101
178
  return (error instanceof AdtNetworkError &&
102
179
  (error.cause?.name === 'TimeoutError' || /deadline was exceeded|timed out|\btimeout\b/i.test(error.message)));
103
180
  }
104
- function incompleteAtcResult(worklistId, variant, maximumVerdicts, expectedFindingCount, runStatusCode, reason) {
181
+ function incompleteAtcResult(worklistId, variant, variantSource, maximumVerdicts, expectedFindingCount, runStatusCode, reason) {
105
182
  return {
106
183
  findings: [],
107
184
  worklistId,
108
185
  variant: variant ?? null,
186
+ variantSource,
109
187
  maximumVerdicts,
110
188
  expectedFindingCount,
111
189
  findingCount: 0,
@@ -264,6 +342,7 @@ function parseAtcRunResult(xml, context) {
264
342
  findings,
265
343
  worklistId: context.worklistId,
266
344
  variant: context.variant ?? null,
345
+ variantSource: context.variantSource,
267
346
  maximumVerdicts: context.maximumVerdicts,
268
347
  expectedFindingCount: context.expectedFindingCount,
269
348
  findingCount: findings.length,
@@ -1 +1 @@
1
- {"version":3,"file":"atc.js","sourceRoot":"","sources":["../../src/adt/atc.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAE3E,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG3D,OAAO,EAAE,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAqB,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAkB,0BAA0B,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AA2CvH,MAAM,sBAAsB,GAAG,OAAO,CAAC;AACvC,MAAM,yBAAyB,GAAG,GAAG,CAAC;AACtC,MAAM,6BAA6B,GAAG,KAAK,CAAC;AAE5C,yCAAyC;AACzC,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAmB,EAAE,MAAoB,EAAE,MAAM,GAAG,GAAG;IAC3F,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;IAC9D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,iCAAiC,kBAAkB,CAAC,OAAO,CAAC,EAAE,EAAE;QAC1F,MAAM,EAAE,2CAA2C;KACpD,CAAC,CAAC;IACH,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAED,iDAAiD;AACjD,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,IAAmB,EACnB,MAAoB;IAEpB,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IAChE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,6BAA6B,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC1F,OAAO,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/C,CAAC;AAED,+EAA+E;AAC/E,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,IAAmB,EACnB,MAAoB,EACpB,SAAiB,EACjB,OAAgB,EAChB,WAAW,GAAmB,EAAE;IAEhC,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;IAC1D,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;IACxC,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,IAAI,sBAAsB,CAAC;IAClE,MAAM,QAAQ,GAAG,GAAG,EAAE,GAAG,SAAS,CAAC;IACnC,MAAM,cAAc,GAAsB;QACxC,QAAQ;QACR,cAAc,EAAE,SAAS;QACzB,MAAM,EAAE,WAAW,CAAC,MAAM;KAC3B,CAAC;IACF,MAAM,YAAY,GAAG,OAAO;QAC1B,CAAC,CAAC,0CAA0C,kBAAkB,CAAC,OAAO,CAAC,EAAE;QACzE,CAAC,CAAC,2BAA2B,CAAC;IAChC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,cAAc,CAAC,CAAC;IACpH,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,WAAW,CAAC,uEAAuE,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IACpH,CAAC;IAED,MAAM,eAAe,GAAG,GAAG,CAAC;IAC5B,MAAM,OAAO,GAAG;mEACiD,eAAe;;;;gDAIlC,aAAa,CAAC,SAAS,CAAC;;;;WAI7D,CAAC;IACV,IAAI,OAAoB,CAAC;IACzB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CACvB,mCAAmC,kBAAkB,CAAC,UAAU,CAAC,EAAE,EACnE,OAAO,EACP,iBAAiB,EACjB,EAAE,MAAM,EAAE,iBAAiB,EAAE,EAC7B,cAAc,CACf,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,mBAAmB,CAAC,UAAU,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,0BAA0B,CAAC,CAAC;QACxG,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;IACD,MAAM,oBAAoB,GAAG,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACvG,IAAI,OAAO,GAAG,WAAW,CAAC,cAAc,IAAI,yBAAyB,CAAC;IACtE,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,IAAI,6BAA6B,CAAC;IAC3E,IAAI,MAAgC,CAAC;IAErC,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,UAAuB,CAAC;QAC5B,IAAI,CAAC;YACH,UAAU,GAAG,MAAM,IAAI,CAAC,GAAG,CACzB,6BAA6B,kBAAkB,CAAC,UAAU,CAAC,EAAE,EAC7D,EAAE,MAAM,EAAE,iCAAiC,EAAE,EAC7C,cAAc,CACf,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChC,OAAO,CACL,MAAM;oBACN,mBAAmB,CACjB,UAAU,EACV,OAAO,EACP,eAAe,EACf,oBAAoB,EACpB,OAAO,CAAC,UAAU,EAClB,wEAAwE,CACzE,CACF,CAAC;YACJ,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;QACD,MAAM,GAAG,iBAAiB,CAAC,UAAU,CAAC,IAAI,EAAE;YAC1C,UAAU;YACV,OAAO;YACP,eAAe;YACf,oBAAoB;YACpB,aAAa,EAAE,OAAO,CAAC,UAAU;SAClC,CAAC,CAAC;QACH,IACE,oBAAoB,KAAK,IAAI;YAC7B,MAAM,CAAC,QAAQ;YACf,MAAM,CAAC,YAAY,GAAG,oBAAoB;YAC1C,GAAG,EAAE,IAAI,QAAQ,EACjB,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAC9D,IAAI,GAAG,EAAE,IAAI,QAAQ;YAAE,OAAO,MAAM,CAAC;QACrC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc;IAC1C,OAAO,CACL,KAAK,YAAY,eAAe;QAChC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,KAAK,cAAc,IAAI,8CAA8C,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAC7G,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,UAAkB,EAClB,OAA2B,EAC3B,eAAuB,EACvB,oBAAmC,EACnC,aAAqB,EACrB,MAAc;IAEd,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,UAAU;QACV,OAAO,EAAE,OAAO,IAAI,IAAI;QACxB,eAAe;QACf,oBAAoB;QACpB,YAAY,EAAE,CAAC;QACf,oBAAoB,EAAE,CAAC;QACvB,mBAAmB,EAAE,IAAI;QACzB,SAAS,EAAE,oBAAoB,KAAK,IAAI,IAAI,oBAAoB,GAAG,CAAC;QACpE,QAAQ,EAAE,KAAK;QACf,iBAAiB,EAAE,CAAC,MAAM,CAAC;QAC3B,aAAa;QACb,QAAQ,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE;QAC5B,KAAK,EAAE,EAAE;KACV,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7F,CAAC;IACD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,SAAS,CAAC;AACpF,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AACrE,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,MAAM,CAC7B,CAAC,IAAI,EAAmC,EAAE,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAC7G,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnC,IAAI,KAAK,IAAI,IAAI;QAAE,OAAO,EAAE,CAAC;IAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,OAAO,MAAM,CAAE,KAAiC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1E,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAW;IACvC,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;IACnD,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3F,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,eAAe,CAAC,CAAC;IAC1F,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;SACvC,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACtC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QACzF,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAS,sBAAsB,CAAC,MAA+B;IAC7D,MAAM,GAAG,GAAG,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjF,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACjF,OAAO,CACL,GAAG,CAAC,MAAM,GAAG,CAAC;QACd,4BAA4B,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI;QAC1F,IAAI,CAAC,MAAM,GAAG,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,CAAC,CAChB,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,OAAgC;IACvD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACvE,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,EAAE,EAAE,CAAC,CAAC;QAC/F,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YAAE,IAAI,GAAG,QAAQ,CAAC;IAC/C,CAAC;IAED,MAAM,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAClD,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACpD,MAAM,aAAa,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IACxD,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QACrD,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QACjD,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;QACrD,GAAG,EAAE,MAAM;QACX,IAAI;QACJ,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;QAC7E,WAAW,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;KACnH,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,IAA6B,EAAE,UAAqC;IAC5F,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CACnD,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CACpF,CAAC;IACF,2FAA2F;IAC3F,mDAAmD;IACnD,OAAO,CAAC,GAAG,cAAc,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,aAAa,CAAC,IAA6B;IAClD,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;SAC3B,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;SAClD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,IAAI;YAAE,OAAO,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,SAAS,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,CAAC;aAC1D,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;aAC9B,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;QAClC,OAAO,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzD,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED,SAAS,iBAAiB,CACxB,GAAW,EACX,OAMC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC;IAC7E,MAAM,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnD,MAAM,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACtD,MAAM,mBAAmB,GAAG,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC;IACrH,MAAM,mBAAmB,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnD,MAAM,2BAA2B,GAAG,mBAAmB,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,CAAC;IACtG,MAAM,cAAc,GAAG,2BAA2B,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7F,MAAM,aAAa,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,OAAO,CAAC,oBAAoB,KAAK,IAAI,IAAI,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAC1G,MAAM,eAAe,GAAG,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAClE,MAAM,oBAAoB,GAAG,eAAe,CAAC,MAAM,CAAC;IACpD,MAAM,oBAAoB,GAAG,aAAa,CAAC,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;IAC3E,MAAM,cAAc,GAAG,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,KAAK,OAAO,CAAC,UAAU,CAAC;IAC7F,MAAM,oBAAoB,GAAG,QAAQ,CAAC,MAAM,CAC1C,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,CAC1E,CAAC,MAAM,CAAC;IACT,MAAM,iBAAiB,GAAa,EAAE,CAAC;IACvC,IAAI,CAAC,gBAAgB;QAAE,iBAAiB,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;IAClG,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,iBAAiB,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC3F,CAAC;SAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC9B,iBAAiB,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;QACjC,iBAAiB,CAAC,IAAI,CACpB,mBAAmB,KAAK,KAAK;YAC3B,CAAC,CAAC,2CAA2C;YAC7C,CAAC,CAAC,uDAAuD,CAC5D,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;QAC1C,iBAAiB,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;IAC/F,CAAC;SAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,CAAC,oBAAoB,EAAE,CAAC;QAC5D,iBAAiB,CAAC,IAAI,CACpB,QAAQ,CAAC,MAAM,GAAG,OAAO,CAAC,oBAAoB;YAC5C,CAAC,CAAC,oBAAoB,QAAQ,CAAC,MAAM,OAAO,OAAO,CAAC,oBAAoB,gCAAgC;YACxG,CAAC,CAAC,oBAAoB,QAAQ,CAAC,MAAM,4BAA4B,OAAO,CAAC,oBAAoB,uBAAuB,CACvH,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACjC,iBAAiB,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,oBAAoB,KAAK,CAAC;QAAE,iBAAiB,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;IACvG,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;QAC7B,iBAAiB,CAAC,IAAI,CAAC,GAAG,oBAAoB,sDAAsD,CAAC,CAAC;IACxG,CAAC;IACD,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;QAC7B,iBAAiB,CAAC,IAAI,CAAC,GAAG,oBAAoB,sDAAsD,CAAC,CAAC;IACxG,CAAC;IACD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAElC,OAAO;QACL,QAAQ;QACR,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI;QAChC,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;QAClD,YAAY,EAAE,QAAQ,CAAC,MAAM;QAC7B,oBAAoB;QACpB,mBAAmB;QACnB,SAAS;QACT,QAAQ,EACN,gBAAgB;YAChB,iBAAiB;YACjB,mBAAmB,KAAK,IAAI;YAC5B,CAAC,SAAS;YACV,OAAO,CAAC,oBAAoB,KAAK,IAAI;YACrC,QAAQ,CAAC,MAAM,KAAK,OAAO,CAAC,oBAAoB;YAChD,2BAA2B;YAC3B,oBAAoB,GAAG,CAAC;YACxB,oBAAoB,KAAK,CAAC;YAC1B,oBAAoB,KAAK,CAAC;QAC5B,iBAAiB;QACjB,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,QAAQ,EAAE;YACR,EAAE,EAAE,cAAc;YAClB,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxG;QACD,KAAK;KACN,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"atc.js","sourceRoot":"","sources":["../../src/adt/atc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ export interface ResolvedBspPath {
2
+ appName: string;
3
+ path?: string;
4
+ }
5
+ export declare const BSP_OBJECTS_PATH = "/sap/bc/adt/filestore/ui5-bsp/objects";
6
+ export declare function bspContentPath(appName: string, path?: string): string;
7
+ /**
8
+ * Separate a BSP application name from an optionally appended repository path.
9
+ *
10
+ * `/NS/APP` is indistinguishable from an ordinary app/path with a stray leading slash, so it is
11
+ * treated as a namespaced application root. Ordinary application names must omit a leading slash;
12
+ * callers can put their case-sensitive repository path in `appendedPath` instead.
13
+ */
14
+ export declare function resolveBspNameAndPath(name: string, appendedPath?: string): ResolvedBspPath;
15
+ //# sourceMappingURL=bsp-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bsp-path.d.ts","sourceRoot":"","sources":["../../src/adt/bsp-path.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,gBAAgB,0CAA0C,CAAC;AAExE,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAIrE;AAaD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,eAAe,CAU1F"}
@@ -0,0 +1,33 @@
1
+ export const BSP_OBJECTS_PATH = '/sap/bc/adt/filestore/ui5-bsp/objects';
2
+ export function bspContentPath(appName, path) {
3
+ const cleanPath = path?.replace(/^\/+/, '') ?? '';
4
+ const objectPath = cleanPath ? `${appName.toUpperCase()}/${cleanPath}` : appName.toUpperCase();
5
+ return `${BSP_OBJECTS_PATH}/${encodeURIComponent(objectPath)}/content`;
6
+ }
7
+ function normalizeBspPath(path) {
8
+ const normalized = path?.replace(/^\/+|\/+$/g, '');
9
+ return normalized || undefined;
10
+ }
11
+ function combineBspPaths(first, second) {
12
+ const normalizedFirst = normalizeBspPath(first);
13
+ const normalizedSecond = normalizeBspPath(second);
14
+ return [normalizedFirst, normalizedSecond].filter((part) => Boolean(part)).join('/') || undefined;
15
+ }
16
+ /**
17
+ * Separate a BSP application name from an optionally appended repository path.
18
+ *
19
+ * `/NS/APP` is indistinguishable from an ordinary app/path with a stray leading slash, so it is
20
+ * treated as a namespaced application root. Ordinary application names must omit a leading slash;
21
+ * callers can put their case-sensitive repository path in `appendedPath` instead.
22
+ */
23
+ export function resolveBspNameAndPath(name, appendedPath) {
24
+ const namespaceEnd = name.startsWith('/') ? name.indexOf('/', 1) : -1;
25
+ const pathStart = namespaceEnd >= 0 ? name.indexOf('/', namespaceEnd + 1) : name.indexOf('/');
26
+ if (pathStart <= 0) {
27
+ const path = normalizeBspPath(appendedPath);
28
+ return { appName: name, ...(path ? { path } : {}) };
29
+ }
30
+ const path = combineBspPaths(name.slice(pathStart + 1), appendedPath);
31
+ return { appName: name.slice(0, pathStart), ...(path ? { path } : {}) };
32
+ }
33
+ //# sourceMappingURL=bsp-path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bsp-path.js","sourceRoot":"","sources":["../../src/adt/bsp-path.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,gBAAgB,GAAG,uCAAuC,CAAC;AAExE,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,IAAa;IAC3D,MAAM,SAAS,GAAG,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;IAClD,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,WAAW,EAAE,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAC/F,OAAO,GAAG,gBAAgB,IAAI,kBAAkB,CAAC,UAAU,CAAC,UAAU,CAAC;AACzE,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAwB;IAChD,MAAM,UAAU,GAAG,IAAI,EAAE,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IACnD,OAAO,UAAU,IAAI,SAAS,CAAC;AACjC,CAAC;AAED,SAAS,eAAe,CAAC,KAAyB,EAAE,MAA0B;IAC5E,MAAM,eAAe,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAClD,OAAO,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;AACpH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAY,EAAE,YAAqB;IACvE,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,YAAY,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9F,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACtD,CAAC;IAED,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AAC1E,CAAC"}
@@ -31,6 +31,13 @@ export interface SourceReadResult {
31
31
  notModified: boolean;
32
32
  statusCode: number;
33
33
  }
34
+ export type BspPathContent = {
35
+ kind: 'folder';
36
+ nodes: BspFileNode[];
37
+ } | {
38
+ kind: 'file';
39
+ content: string;
40
+ };
34
41
  export interface SourceReadOptions extends AdtRequestOptions {
35
42
  ifNoneMatch?: string;
36
43
  version?: 'active' | 'inactive';
@@ -496,10 +503,15 @@ export declare class AdtClient {
496
503
  getVariants(program: string): Promise<string>;
497
504
  /** List deployed BSP/UI5 applications */
498
505
  listBspApps(query?: string, maxResults?: number): Promise<BspAppInfo[]>;
499
- /** Browse BSP app file structure (root or subfolder) */
506
+ /** @deprecated Use getBspPathContent(); throws when SAP identifies the path as a file. */
500
507
  getBspAppStructure(appName: string, subPath?: string): Promise<BspFileNode[]>;
501
- /** Read a single file from a BSP app */
508
+ /** @deprecated Use getBspPathContent(); throws when SAP identifies the path as a folder. */
502
509
  getBspFileContent(appName: string, filePath: string): Promise<string>;
510
+ /**
511
+ * Read a BSP path and let SAP's response media type identify files vs folders.
512
+ * Binary assets remain outside this text-oriented API because AdtResponse exposes a string body.
513
+ */
514
+ getBspPathContent(appName: string, path?: string): Promise<BspPathContent>;
503
515
  /**
504
516
  * Raw object-root metadata at an explicit ADT URL (may carry `?version=…`).
505
517
  * Used by post-create metadata writes that must round-trip SAP's own envelope
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/adt/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/adt/client.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@
15
15
  * are imported from their respective modules when needed by handlers.
16
16
  * This keeps the client class manageable (not a 2,400-line God class).
17
17
  */
18
+ import { BSP_OBJECTS_PATH, bspContentPath, resolveBspNameAndPath } from './bsp-path.js';
18
19
  import { defaultAdtClientConfig } from './config.js';
19
20
  import { lockObject, unlockObject } from './crud.js';
20
21
  import { parseTableType } from './ddic-xml.js';
@@ -1378,25 +1379,42 @@ export class AdtClient {
1378
1379
  if (maxResults !== undefined)
1379
1380
  params.set('maxResults', String(maxResults));
1380
1381
  const qs = params.toString();
1381
- const path = `/sap/bc/adt/filestore/ui5-bsp/objects${qs ? `?${qs}` : ''}`;
1382
+ const path = `${BSP_OBJECTS_PATH}${qs ? `?${qs}` : ''}`;
1382
1383
  const resp = await this.http.get(path, { Accept: 'application/atom+xml' });
1383
1384
  return parseBspAppList(resp.body);
1384
1385
  }
1385
- /** Browse BSP app file structure (root or subfolder) */
1386
+ /** @deprecated Use getBspPathContent(); throws when SAP identifies the path as a file. */
1386
1387
  async getBspAppStructure(appName, subPath) {
1387
1388
  checkOperation(this.safety, OperationType.Read, 'GetBSPApp');
1388
- const normalizedSubPath = subPath && !subPath.startsWith('/') ? `/${subPath}` : subPath || '';
1389
- const objectPath = appName.toUpperCase() + normalizedSubPath;
1390
- const resp = await this.http.get(`/sap/bc/adt/filestore/ui5-bsp/objects/${encodeURIComponent(objectPath)}/content`, { Accept: 'application/xml', 'Content-Type': 'application/atom+xml' });
1391
- return parseBspFolderListing(resp.body, appName.toUpperCase());
1389
+ const resolved = resolveBspNameAndPath(appName, subPath);
1390
+ const content = await this.getBspPathContent(resolved.appName, resolved.path);
1391
+ if (content.kind !== 'folder') {
1392
+ throw new AdtApiError('The requested BSP path is a file, not a folder.', 400, bspContentPath(resolved.appName, resolved.path));
1393
+ }
1394
+ return content.nodes;
1392
1395
  }
1393
- /** Read a single file from a BSP app */
1396
+ /** @deprecated Use getBspPathContent(); throws when SAP identifies the path as a folder. */
1394
1397
  async getBspFileContent(appName, filePath) {
1395
1398
  checkOperation(this.safety, OperationType.Read, 'GetBSPFile');
1396
- const cleanPath = filePath.startsWith('/') ? filePath.substring(1) : filePath;
1397
- const objectPath = `${appName.toUpperCase()}/${cleanPath}`;
1398
- const resp = await this.http.get(`/sap/bc/adt/filestore/ui5-bsp/objects/${encodeURIComponent(objectPath)}/content`, { Accept: 'application/xml', 'Content-Type': 'application/octet-stream' });
1399
- return resp.body;
1399
+ const resolved = resolveBspNameAndPath(appName, filePath);
1400
+ const content = await this.getBspPathContent(resolved.appName, resolved.path);
1401
+ if (content.kind !== 'file') {
1402
+ throw new AdtApiError('The requested BSP path is a folder, not a file.', 400, bspContentPath(resolved.appName, resolved.path));
1403
+ }
1404
+ return content.content;
1405
+ }
1406
+ /**
1407
+ * Read a BSP path and let SAP's response media type identify files vs folders.
1408
+ * Binary assets remain outside this text-oriented API because AdtResponse exposes a string body.
1409
+ */
1410
+ async getBspPathContent(appName, path) {
1411
+ checkOperation(this.safety, OperationType.Read, 'GetBSPPathContent');
1412
+ // Explicit */* suppresses discovery MIME negotiation so SAP can select the resource's real media type.
1413
+ const resp = await this.http.get(bspContentPath(appName, path), { Accept: '*/*' });
1414
+ if (resp.headers['content-type']?.toLowerCase().startsWith('application/atom+xml')) {
1415
+ return { kind: 'folder', nodes: parseBspFolderListing(resp.body, appName.toUpperCase()) };
1416
+ }
1417
+ return { kind: 'file', content: resp.body };
1400
1418
  }
1401
1419
  /**
1402
1420
  * Raw object-root metadata at an explicit ADT URL (may carry `?version=…`).