arc-1 0.9.4 → 0.9.6
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 +19 -1
- package/dist/adt/client.d.ts +61 -7
- package/dist/adt/client.d.ts.map +1 -1
- package/dist/adt/client.js +238 -9
- package/dist/adt/client.js.map +1 -1
- package/dist/adt/config.d.ts +7 -1
- package/dist/adt/config.d.ts.map +1 -1
- package/dist/adt/config.js.map +1 -1
- package/dist/adt/features.d.ts.map +1 -1
- package/dist/adt/features.js +27 -3
- package/dist/adt/features.js.map +1 -1
- package/dist/adt/http.d.ts +23 -0
- package/dist/adt/http.d.ts.map +1 -1
- package/dist/adt/http.js +82 -2
- package/dist/adt/http.js.map +1 -1
- package/dist/adt/rap-handlers.d.ts +41 -0
- package/dist/adt/rap-handlers.d.ts.map +1 -1
- package/dist/adt/rap-handlers.js +31 -8
- package/dist/adt/rap-handlers.js.map +1 -1
- package/dist/adt/types.d.ts +8 -0
- package/dist/adt/types.d.ts.map +1 -1
- package/dist/adt/xml-parser.d.ts +22 -0
- package/dist/adt/xml-parser.d.ts.map +1 -1
- package/dist/adt/xml-parser.js +32 -0
- package/dist/adt/xml-parser.js.map +1 -1
- package/dist/authz/policy.d.ts.map +1 -1
- package/dist/authz/policy.js +8 -0
- package/dist/authz/policy.js.map +1 -1
- package/dist/handlers/intent.d.ts +2 -1
- package/dist/handlers/intent.d.ts.map +1 -1
- package/dist/handlers/intent.js +383 -51
- package/dist/handlers/intent.js.map +1 -1
- package/dist/handlers/schemas.d.ts +48 -28
- package/dist/handlers/schemas.d.ts.map +1 -1
- package/dist/handlers/schemas.js +30 -0
- package/dist/handlers/schemas.js.map +1 -1
- package/dist/handlers/tools.d.ts.map +1 -1
- package/dist/handlers/tools.js +16 -0
- package/dist/handlers/tools.js.map +1 -1
- package/dist/lint/lint.d.ts.map +1 -1
- package/dist/lint/lint.js +6 -0
- package/dist/lint/lint.js.map +1 -1
- package/dist/lint/pre-write-hints.d.ts +45 -0
- package/dist/lint/pre-write-hints.d.ts.map +1 -0
- package/dist/lint/pre-write-hints.js +145 -0
- package/dist/lint/pre-write-hints.js.map +1 -0
- package/dist/server/audit.d.ts +27 -1
- package/dist/server/audit.d.ts.map +1 -1
- package/dist/server/audit.js.map +1 -1
- package/dist/server/auth-rate-limit.d.ts +78 -0
- package/dist/server/auth-rate-limit.d.ts.map +1 -0
- package/dist/server/auth-rate-limit.js +95 -0
- package/dist/server/auth-rate-limit.js.map +1 -0
- package/dist/server/config.d.ts.map +1 -1
- package/dist/server/config.js +56 -8
- package/dist/server/config.js.map +1 -1
- package/dist/server/http.d.ts.map +1 -1
- package/dist/server/http.js +74 -2
- package/dist/server/http.js.map +1 -1
- package/dist/server/mcp-rate-limit.d.ts +69 -0
- package/dist/server/mcp-rate-limit.d.ts.map +1 -0
- package/dist/server/mcp-rate-limit.js +92 -0
- package/dist/server/mcp-rate-limit.js.map +1 -0
- package/dist/server/server.d.ts +7 -5
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +43 -18
- package/dist/server/server.js.map +1 -1
- package/dist/server/stateless-client-store.d.ts +11 -3
- package/dist/server/stateless-client-store.d.ts.map +1 -1
- package/dist/server/stateless-client-store.js +39 -9
- package/dist/server/stateless-client-store.js.map +1 -1
- package/dist/server/types.d.ts +37 -6
- package/dist/server/types.d.ts.map +1 -1
- package/dist/server/types.js +3 -1
- package/dist/server/types.js.map +1 -1
- package/dist/server/xsuaa.d.ts +10 -1
- package/dist/server/xsuaa.d.ts.map +1 -1
- package/dist/server/xsuaa.js +38 -5
- package/dist/server/xsuaa.js.map +1 -1
- package/package.json +15 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/handlers/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/handlers/tools.ts"],"names":[],"mappings":"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"}
|
package/dist/lint/lint.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../src/lint/lint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAwC,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAuB,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../../src/lint/lint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAwC,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAuB,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGlF,sCAAsC;AACtC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;CACxC;AAED,uCAAuC;AACvC,MAAM,WAAW,aAAa;IAC5B,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,mCAAmC;IACnC,eAAe,EAAE,UAAU,EAAE,CAAC;CAC/B;AAED,qCAAqC;AACrC,MAAM,WAAW,cAAc;IAC7B,uCAAuC;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,kCAAkC;IAClC,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,uCAAuC;IACvC,QAAQ,EAAE,UAAU,EAAE,CAAC;CACxB;AAKD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,EAAE,CAc9F;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,aAAa,CAgD3F;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,iBAAiB,GAChC,cAAc,CAkBhB;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAsCzE"}
|
package/dist/lint/lint.js
CHANGED
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import { Config, Edits, MemoryFile, Registry, Version } from '@abaplint/core';
|
|
17
17
|
import { buildPreWriteConfig } from './config-builder.js';
|
|
18
|
+
import { inspectTablSource } from './pre-write-hints.js';
|
|
18
19
|
/** Default abaplint configuration for ARC-1 (legacy, used as fallback) */
|
|
19
20
|
const DEFAULT_CONFIG = Config.getDefault(Version.v702);
|
|
20
21
|
/**
|
|
@@ -101,6 +102,11 @@ export function validateBeforeWrite(source, filename, configOptions) {
|
|
|
101
102
|
const issues = lintAbapSource(source, filename, config);
|
|
102
103
|
const errors = issues.filter((i) => i.severity === 'error');
|
|
103
104
|
const warnings = issues.filter((i) => i.severity === 'warning');
|
|
105
|
+
// ARC-1-native pre-write semantic hints (filename-gated; advisory only).
|
|
106
|
+
// See `src/lint/pre-write-hints.ts` for the per-type inspection functions.
|
|
107
|
+
if (filename.endsWith('.tabl.astabl')) {
|
|
108
|
+
warnings.push(...inspectTablSource(source));
|
|
109
|
+
}
|
|
104
110
|
return {
|
|
105
111
|
pass: errors.length === 0,
|
|
106
112
|
errors,
|
package/dist/lint/lint.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/lint/lint.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,mBAAmB,EAA0B,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../../src/lint/lint.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ARC-1-native pre-write semantic hints.
|
|
3
|
+
*
|
|
4
|
+
* These hints inspect source code for known anti-patterns that lie outside the
|
|
5
|
+
* scope of `@abaplint/core` rules — typically RAP/CDS conventions where the SAP
|
|
6
|
+
* standard pattern matters at a *layer above* TABL/CDS syntax (e.g. a draft
|
|
7
|
+
* table activates fine but breaks BDEF binding because of a non-canonical
|
|
8
|
+
* include shape).
|
|
9
|
+
*
|
|
10
|
+
* Each hint is a pure function: `(source: string) => LintResult[]`. Hints
|
|
11
|
+
* always emit `severity: 'warning'` — they are advisory and never block writes.
|
|
12
|
+
* Call sites filename-gate the hints (e.g. only run `inspectTablSource` when
|
|
13
|
+
* the filename ends with `.tabl.astabl`) so other object types are unaffected.
|
|
14
|
+
*
|
|
15
|
+
* Adding a new hint:
|
|
16
|
+
* 1. Add an `inspect<Type>Source(source: string): LintResult[]` function here.
|
|
17
|
+
* 2. Wire the call into `validateBeforeWrite` in `./lint.ts`, gated on the
|
|
18
|
+
* appropriate filename suffix.
|
|
19
|
+
* 3. Cover the hint with unit tests in `tests/unit/lint/pre-write-hints.test.ts`.
|
|
20
|
+
*/
|
|
21
|
+
import type { LintResult } from './lint.js';
|
|
22
|
+
export type { LintResult } from './lint.js';
|
|
23
|
+
/**
|
|
24
|
+
* Inspect a TABL source for known anti-patterns and return non-blocking warnings.
|
|
25
|
+
*
|
|
26
|
+
* Currently checks:
|
|
27
|
+
*
|
|
28
|
+
* - **Draft admin include without canonical name** (rule
|
|
29
|
+
* `arc1-tabl-draft-admin-include`): `include sych_bdl_draft_admin_inc` is used
|
|
30
|
+
* without the SAP-canonical `"%admin"` named-substructure prefix. The bare
|
|
31
|
+
* form activates at TABL level on most releases but is non-canonical per the
|
|
32
|
+
* ABAP keyword doc `ABENBDL_DRAFT_TABLE` and breaks BDEF binding for some
|
|
33
|
+
* draft scenarios. SAP standard draft tables (e.g. `BOTD_TAB_ROOT_D`) all
|
|
34
|
+
* use the named form.
|
|
35
|
+
*
|
|
36
|
+
* The function is pure (no I/O, no async). CDS line (`//`) and block
|
|
37
|
+
* (slash-star block) comments are stripped before scanning so commented-out
|
|
38
|
+
* code does not trigger false positives.
|
|
39
|
+
*
|
|
40
|
+
* @param source - TABL CDS source code
|
|
41
|
+
* @returns Array of `LintResult` warnings (always `severity: 'warning'`); empty
|
|
42
|
+
* if the source uses canonical patterns or has no draft admin include.
|
|
43
|
+
*/
|
|
44
|
+
export declare function inspectTablSource(source: string): LintResult[];
|
|
45
|
+
//# sourceMappingURL=pre-write-hints.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pre-write-hints.d.ts","sourceRoot":"","sources":["../../src/lint/pre-write-hints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAuB5C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,CAwB9D"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ARC-1-native pre-write semantic hints.
|
|
3
|
+
*
|
|
4
|
+
* These hints inspect source code for known anti-patterns that lie outside the
|
|
5
|
+
* scope of `@abaplint/core` rules — typically RAP/CDS conventions where the SAP
|
|
6
|
+
* standard pattern matters at a *layer above* TABL/CDS syntax (e.g. a draft
|
|
7
|
+
* table activates fine but breaks BDEF binding because of a non-canonical
|
|
8
|
+
* include shape).
|
|
9
|
+
*
|
|
10
|
+
* Each hint is a pure function: `(source: string) => LintResult[]`. Hints
|
|
11
|
+
* always emit `severity: 'warning'` — they are advisory and never block writes.
|
|
12
|
+
* Call sites filename-gate the hints (e.g. only run `inspectTablSource` when
|
|
13
|
+
* the filename ends with `.tabl.astabl`) so other object types are unaffected.
|
|
14
|
+
*
|
|
15
|
+
* Adding a new hint:
|
|
16
|
+
* 1. Add an `inspect<Type>Source(source: string): LintResult[]` function here.
|
|
17
|
+
* 2. Wire the call into `validateBeforeWrite` in `./lint.ts`, gated on the
|
|
18
|
+
* appropriate filename suffix.
|
|
19
|
+
* 3. Cover the hint with unit tests in `tests/unit/lint/pre-write-hints.test.ts`.
|
|
20
|
+
*/
|
|
21
|
+
/** Matches every occurrence of `include sych_bdl_draft_admin_inc` (case-insensitive). */
|
|
22
|
+
const DRAFT_ADMIN_INC_REGEX = /\binclude\s+sych_bdl_draft_admin_inc\b/gi;
|
|
23
|
+
/**
|
|
24
|
+
* Matches the canonical named-include prefix `"%admin" :` immediately preceding
|
|
25
|
+
* an include keyword. Used as a "look-back" check on the segment between the
|
|
26
|
+
* statement separator (`;`, `{`, `}`) and the matched include.
|
|
27
|
+
*/
|
|
28
|
+
const CANONICAL_PREFIX_REGEX = /"%admin"\s*:\s*$/i;
|
|
29
|
+
const TABL_DRAFT_ADMIN_RULE = 'arc1-tabl-draft-admin-include';
|
|
30
|
+
const TABL_DRAFT_ADMIN_MESSAGE = 'Draft admin include should use the canonical named form ' +
|
|
31
|
+
'`"%admin" : include sych_bdl_draft_admin_inc;` ' +
|
|
32
|
+
'— see ABAP keyword doc ABENBDL_DRAFT_TABLE ' +
|
|
33
|
+
'(https://help.sap.com/doc/abapdocu_latest_index_htm/latest/en-US/ABENBDL_DRAFT_TABLE.html). ' +
|
|
34
|
+
'SAP standard draft tables (e.g. BOTD_TAB_ROOT_D) all use the named form; ' +
|
|
35
|
+
'the bare include activates at TABL level on most releases but breaks BDEF ' +
|
|
36
|
+
'binding for some draft scenarios.';
|
|
37
|
+
/**
|
|
38
|
+
* Inspect a TABL source for known anti-patterns and return non-blocking warnings.
|
|
39
|
+
*
|
|
40
|
+
* Currently checks:
|
|
41
|
+
*
|
|
42
|
+
* - **Draft admin include without canonical name** (rule
|
|
43
|
+
* `arc1-tabl-draft-admin-include`): `include sych_bdl_draft_admin_inc` is used
|
|
44
|
+
* without the SAP-canonical `"%admin"` named-substructure prefix. The bare
|
|
45
|
+
* form activates at TABL level on most releases but is non-canonical per the
|
|
46
|
+
* ABAP keyword doc `ABENBDL_DRAFT_TABLE` and breaks BDEF binding for some
|
|
47
|
+
* draft scenarios. SAP standard draft tables (e.g. `BOTD_TAB_ROOT_D`) all
|
|
48
|
+
* use the named form.
|
|
49
|
+
*
|
|
50
|
+
* The function is pure (no I/O, no async). CDS line (`//`) and block
|
|
51
|
+
* (slash-star block) comments are stripped before scanning so commented-out
|
|
52
|
+
* code does not trigger false positives.
|
|
53
|
+
*
|
|
54
|
+
* @param source - TABL CDS source code
|
|
55
|
+
* @returns Array of `LintResult` warnings (always `severity: 'warning'`); empty
|
|
56
|
+
* if the source uses canonical patterns or has no draft admin include.
|
|
57
|
+
*/
|
|
58
|
+
export function inspectTablSource(source) {
|
|
59
|
+
const stripped = stripCdsComments(source);
|
|
60
|
+
const warnings = [];
|
|
61
|
+
DRAFT_ADMIN_INC_REGEX.lastIndex = 0;
|
|
62
|
+
let match;
|
|
63
|
+
while ((match = DRAFT_ADMIN_INC_REGEX.exec(stripped)) !== null) {
|
|
64
|
+
const matchStart = match.index;
|
|
65
|
+
if (isCanonicalContext(stripped, matchStart)) {
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
const { line, column } = positionAt(stripped, matchStart);
|
|
69
|
+
warnings.push({
|
|
70
|
+
rule: TABL_DRAFT_ADMIN_RULE,
|
|
71
|
+
message: TABL_DRAFT_ADMIN_MESSAGE,
|
|
72
|
+
line,
|
|
73
|
+
column,
|
|
74
|
+
endLine: line,
|
|
75
|
+
endColumn: column + match[0].length,
|
|
76
|
+
severity: 'warning',
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
return warnings;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Strip CDS-style comments (`//` line, slash-star block block) so hint scans
|
|
83
|
+
* don't false-positive on commented-out code. Preserves source length and line
|
|
84
|
+
* count (comments are replaced with whitespace) so positions of remaining
|
|
85
|
+
* tokens are unchanged.
|
|
86
|
+
*/
|
|
87
|
+
function stripCdsComments(source) {
|
|
88
|
+
let result = '';
|
|
89
|
+
let i = 0;
|
|
90
|
+
while (i < source.length) {
|
|
91
|
+
if (source[i] === '/' && source[i + 1] === '/') {
|
|
92
|
+
while (i < source.length && source[i] !== '\n') {
|
|
93
|
+
result += ' ';
|
|
94
|
+
i++;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
else if (source[i] === '/' && source[i + 1] === '*') {
|
|
98
|
+
// Block comment — preserve newlines, blank everything else
|
|
99
|
+
while (i < source.length && !(source[i] === '*' && source[i + 1] === '/')) {
|
|
100
|
+
result += source[i] === '\n' ? '\n' : ' ';
|
|
101
|
+
i++;
|
|
102
|
+
}
|
|
103
|
+
if (i < source.length) {
|
|
104
|
+
result += ' ';
|
|
105
|
+
i += 2;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
result += source[i];
|
|
110
|
+
i++;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
return result;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Look back from `matchIndex` to the start of the current statement (previous
|
|
117
|
+
* `;`, `{`, or `}`) and check whether that segment ends with `"%admin" :` —
|
|
118
|
+
* the canonical named-include prefix. Handles single-line and multi-line
|
|
119
|
+
* `"%admin" :` ... `include` shapes uniformly.
|
|
120
|
+
*/
|
|
121
|
+
function isCanonicalContext(source, matchIndex) {
|
|
122
|
+
let stmtStart = 0;
|
|
123
|
+
for (let i = matchIndex - 1; i >= 0; i--) {
|
|
124
|
+
const ch = source[i];
|
|
125
|
+
if (ch === ';' || ch === '{' || ch === '}') {
|
|
126
|
+
stmtStart = i + 1;
|
|
127
|
+
break;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
const stmtBefore = source.substring(stmtStart, matchIndex);
|
|
131
|
+
return CANONICAL_PREFIX_REGEX.test(stmtBefore);
|
|
132
|
+
}
|
|
133
|
+
/** Convert a 0-based string index to 1-based `(line, column)` coordinates. */
|
|
134
|
+
function positionAt(source, index) {
|
|
135
|
+
let line = 1;
|
|
136
|
+
let lineStart = 0;
|
|
137
|
+
for (let i = 0; i < index && i < source.length; i++) {
|
|
138
|
+
if (source[i] === '\n') {
|
|
139
|
+
line++;
|
|
140
|
+
lineStart = i + 1;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
return { line, column: index - lineStart + 1 };
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=pre-write-hints.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pre-write-hints.js","sourceRoot":"","sources":["../../src/lint/pre-write-hints.ts"],"names":[],"mappings":"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"}
|
package/dist/server/audit.d.ts
CHANGED
|
@@ -155,8 +155,34 @@ export interface CorsRejectedEvent extends AuditEventBase {
|
|
|
155
155
|
/** Request path, e.g. `/mcp`, `/register`, `/authorize`. */
|
|
156
156
|
path: string;
|
|
157
157
|
}
|
|
158
|
+
/** Layer 1: a per-IP HTTP-edge rate limit fired. Either OAuth (`/register`, `/authorize`,
|
|
159
|
+
* `/token`, `/revoke`) or `/mcp` (pre-bearer-auth probing). Returned a 429 with
|
|
160
|
+
* `Retry-After` and RFC 9331 `RateLimit-*` headers. See docs_page/rate-limiting.md. */
|
|
161
|
+
export interface AuthRateLimitedEvent extends AuditEventBase {
|
|
162
|
+
event: 'auth_rate_limited';
|
|
163
|
+
/** Endpoint that triggered — '/register' | '/authorize' | '/token' | '/revoke' | '/mcp'. */
|
|
164
|
+
endpoint: string;
|
|
165
|
+
/** Client IP after `trust proxy 1` resolution. May be attacker-controlled. */
|
|
166
|
+
ip: string;
|
|
167
|
+
/** Configured per-minute cap for this endpoint at the time of denial. */
|
|
168
|
+
limitPerMinute: number;
|
|
169
|
+
}
|
|
170
|
+
/** Layer 2: a per-user MCP tool-call rate limit fired. Returned an MCP tool error with
|
|
171
|
+
* `retryAfter` (not HTTP 429), so the LLM client surfaces it as a tool failure and
|
|
172
|
+
* the agent loop backs off. See docs_page/rate-limiting.md. */
|
|
173
|
+
export interface McpRateLimitedEvent extends AuditEventBase {
|
|
174
|
+
event: 'mcp_rate_limited';
|
|
175
|
+
/** Resolved user key: `authInfo.userName ?? clientId ?? '__anon__'`. */
|
|
176
|
+
user: string;
|
|
177
|
+
/** MCP tool that was denied (e.g. 'SAPRead', 'SAPWrite'). */
|
|
178
|
+
tool: string;
|
|
179
|
+
/** Configured per-user per-minute cap at the time of denial. */
|
|
180
|
+
limitPerMinute: number;
|
|
181
|
+
/** Milliseconds until the bucket refills enough for the next call. */
|
|
182
|
+
retryAfterMs: number;
|
|
183
|
+
}
|
|
158
184
|
/** Discriminated union of all audit events */
|
|
159
|
-
export type AuditEvent = ToolCallStartEvent | ToolCallEndEvent | HttpRequestEvent | HttpCsrfFetchEvent | AuthScopeDeniedEvent | AuthPPCreatedEvent | SafetyBlockedEvent | ServerStartEvent | ElicitationSentEvent | ElicitationResponseEvent | ActivationPreauditEvent | OAuthClientRegisteredEvent | OAuthClientLookupFailedEvent | OAuthRedirectUriRegisteredEvent | CorsRejectedEvent;
|
|
185
|
+
export type AuditEvent = ToolCallStartEvent | ToolCallEndEvent | HttpRequestEvent | HttpCsrfFetchEvent | AuthScopeDeniedEvent | AuthPPCreatedEvent | SafetyBlockedEvent | ServerStartEvent | ElicitationSentEvent | ElicitationResponseEvent | ActivationPreauditEvent | OAuthClientRegisteredEvent | OAuthClientLookupFailedEvent | OAuthRedirectUriRegisteredEvent | CorsRejectedEvent | AuthRateLimitedEvent | McpRateLimitedEvent;
|
|
160
186
|
/** Sanitize tool call arguments — remove values that might contain sensitive data */
|
|
161
187
|
export declare function sanitizeArgs(args: Record<string, unknown>): Record<string, unknown>;
|
|
162
188
|
//# sourceMappingURL=audit.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/server/audit.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"audit.d.ts","sourceRoot":"","sources":["../../src/server/audit.ts"],"names":[],"mappings":"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"}
|
package/dist/server/audit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/server/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"audit.js","sourceRoot":"","sources":["../../src/server/audit.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAuNH,qFAAqF;AACrF,MAAM,UAAU,YAAY,CAAC,IAA6B;IACxD,MAAM,aAAa,GAAG;QACpB,UAAU;QACV,OAAO;QACP,QAAQ;QACR,QAAQ;QACR,eAAe;QACf,MAAM;QACN,QAAQ;QACR,SAAS;QACT,WAAW;QACX,gBAAgB;KACjB,CAAC;IACF,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,MAAM,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC;QAC7B,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YAC3D,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,kBAAkB,KAAK,CAAC,MAAM,SAAS,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Layer 1 — HTTP-edge per-IP rate limiter.
|
|
3
|
+
*
|
|
4
|
+
* Mounted in `src/server/http.ts` on `/register`, `/authorize`, `/token`, `/revoke`,
|
|
5
|
+
* and `/mcp`. Closes the OAuth surface against brute-force / probing and the `/mcp`
|
|
6
|
+
* surface against anonymous probing of the pre-bearer-auth path. CodeQL alert #12
|
|
7
|
+
* (`js/missing-rate-limiting`) is resolved by this module's mount.
|
|
8
|
+
*
|
|
9
|
+
* Design choices:
|
|
10
|
+
* - Per-IP, in-memory only — multi-instance attackers cost `limit × instances`. We
|
|
11
|
+
* accept that trade-off to preserve the stateless-deployment property from PR #212.
|
|
12
|
+
* - The operator-facing knob is a single per-minute baseline (`ARC1_AUTH_RATE_LIMIT`,
|
|
13
|
+
* default 20). Per-endpoint differentiation is done at the mount site in http.ts:
|
|
14
|
+
* OAuth endpoints all use the baseline; `/mcp` gets a higher cap to absorb
|
|
15
|
+
* legitimate batch tool-call traffic.
|
|
16
|
+
* - On limit hit, emits a typed `auth_rate_limited` audit event BEFORE responding so
|
|
17
|
+
* the security event stream captures the denial regardless of response timing.
|
|
18
|
+
* - Uses `standardHeaders: 'draft-7'` for RFC 9331 / draft-ietf-httpapi-ratelimit
|
|
19
|
+
* headers (`RateLimit-Limit`, `RateLimit-Remaining`, `RateLimit-Reset`).
|
|
20
|
+
*/
|
|
21
|
+
import type { Request, RequestHandler, Response } from 'express';
|
|
22
|
+
/**
|
|
23
|
+
* Optional knobs for `createAuthRateLimiter`.
|
|
24
|
+
*
|
|
25
|
+
* `skip` is the only one currently — used to layer two limiters on the same
|
|
26
|
+
* route (`/authorize`) where one skips JSON-RPC bodies and the other only
|
|
27
|
+
* applies to JSON-RPC bodies. See http.ts for the Copilot Studio rationale.
|
|
28
|
+
* Passing a `skip` function is preferred over building an outer conditional
|
|
29
|
+
* dispatcher: CodeQL's `js/missing-rate-limiting` query only recognises
|
|
30
|
+
* `app.use(path, rateLimit({...}))` patterns where the second argument is
|
|
31
|
+
* directly a `rateLimit({...})` result. Going through an inline arrow
|
|
32
|
+
* function with branch-based delegation re-opens the alert.
|
|
33
|
+
*/
|
|
34
|
+
export interface AuthRateLimiterOptions {
|
|
35
|
+
skip?: (req: Request, res: Response) => boolean;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Build a per-IP rate limiter for one endpoint. The returned middleware:
|
|
39
|
+
* - allows `perMinute` requests per minute per IP (60_000 ms window),
|
|
40
|
+
* - returns HTTP 429 with `Retry-After` and RFC 9331 `RateLimit-*` headers on hit,
|
|
41
|
+
* - emits a typed `auth_rate_limited` audit event on every denial,
|
|
42
|
+
* - honors an optional `skip` predicate so the same Express route can stack
|
|
43
|
+
* two limiters (one for OAuth bodies, one for Copilot Studio MCP JSON-RPC).
|
|
44
|
+
*
|
|
45
|
+
* `endpoint` is used only for the audit event label and for diagnostic logs;
|
|
46
|
+
* the path-based mount in Express is done by the caller.
|
|
47
|
+
*
|
|
48
|
+
* Operators disable Layer 1 by setting `ARC1_AUTH_RATE_LIMIT=0`, which makes
|
|
49
|
+
* `http.ts` skip the `app.use(…)` mount entirely — there is intentionally no
|
|
50
|
+
* "noop middleware" path here. Keeping the dataflow `rateLimit({…}) → app.use`
|
|
51
|
+
* direct lets CodeQL's `js/missing-rate-limiting` query close cleanly.
|
|
52
|
+
*/
|
|
53
|
+
export declare function createAuthRateLimiter(endpoint: string, perMinute: number, opts?: AuthRateLimiterOptions): RequestHandler;
|
|
54
|
+
/**
|
|
55
|
+
* Detect Copilot Studio MCP JSON-RPC requests sent to `/authorize`.
|
|
56
|
+
*
|
|
57
|
+
* Copilot Studio POSTs JSON-RPC tool calls to `/authorize` (a known quirk of
|
|
58
|
+
* that MCP client). On `/authorize`, this predicate is used in two limiter
|
|
59
|
+
* mounts: the OAuth-cap limiter `skip`s when this is true; the MCP-cap
|
|
60
|
+
* limiter `skip`s when this is false. The pair gives JSON-RPC traffic the
|
|
61
|
+
* higher `/mcp` cap while real OAuth flows stay on the OAuth cap.
|
|
62
|
+
*
|
|
63
|
+
* Critically, this predicate MUST agree with the routing handler in `http.ts`
|
|
64
|
+
* that actually dispatches the request to either the OAuth flow or the MCP
|
|
65
|
+
* handler. The handler uses `req.body?.jsonrpc` — a truthiness check that
|
|
66
|
+
* rejects falsy values (`''`, `0`, `null`). We mirror that exactly:
|
|
67
|
+
* presence + truthiness. Earlier code used a presence-only check, which let
|
|
68
|
+
* a request like `{"jsonrpc": ""}` skip the OAuth limiter (presence true =
|
|
69
|
+
* "Copilot traffic, use MCP cap") AND get routed as a normal OAuth request
|
|
70
|
+
* (truthiness false = "not Copilot, run OAuth"), producing a 30× rate-limit
|
|
71
|
+
* bypass on `/authorize`. The predicate and the routing handler are now
|
|
72
|
+
* defined identically and `http.ts` reuses this function in both places.
|
|
73
|
+
*
|
|
74
|
+
* Exported so http.ts AND its tests use the exact same predicate — drift
|
|
75
|
+
* here would silently re-introduce the bypass.
|
|
76
|
+
*/
|
|
77
|
+
export declare function isCopilotJsonRpc(req: Request): boolean;
|
|
78
|
+
//# sourceMappingURL=auth-rate-limit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-rate-limit.d.ts","sourceRoot":"","sources":["../../src/server/auth-rate-limit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAIjE;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,KAAK,OAAO,CAAC;CACjD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE,sBAA2B,GAChC,cAAc,CA0BhB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAItD"}
|