@memberjunction/server 5.12.0 → 5.14.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/dist/agents/skip-sdk.d.ts +8 -0
- package/dist/agents/skip-sdk.d.ts.map +1 -1
- package/dist/agents/skip-sdk.js +19 -0
- package/dist/agents/skip-sdk.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +94 -89
- package/dist/index.js.map +1 -1
- package/dist/middleware/BaseServerMiddleware.d.ts +103 -0
- package/dist/middleware/BaseServerMiddleware.d.ts.map +1 -0
- package/dist/middleware/BaseServerMiddleware.js +104 -0
- package/dist/middleware/BaseServerMiddleware.js.map +1 -0
- package/dist/middleware/MJTenantFilterMiddleware.d.ts +22 -0
- package/dist/middleware/MJTenantFilterMiddleware.d.ts.map +1 -0
- package/dist/middleware/MJTenantFilterMiddleware.js +41 -0
- package/dist/middleware/MJTenantFilterMiddleware.js.map +1 -0
- package/dist/middleware/index.d.ts +3 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +3 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/resolvers/GetDataResolver.d.ts.map +1 -1
- package/dist/resolvers/GetDataResolver.js +2 -1
- package/dist/resolvers/GetDataResolver.js.map +1 -1
- package/dist/resolvers/{CreateQueryResolver.d.ts → QuerySystemUserResolver.d.ts} +26 -82
- package/dist/resolvers/QuerySystemUserResolver.d.ts.map +1 -0
- package/dist/resolvers/{CreateQueryResolver.js → QuerySystemUserResolver.js} +123 -486
- package/dist/resolvers/QuerySystemUserResolver.js.map +1 -0
- package/dist/resolvers/TestQuerySQLResolver.d.ts +54 -0
- package/dist/resolvers/TestQuerySQLResolver.d.ts.map +1 -0
- package/dist/resolvers/TestQuerySQLResolver.js +189 -0
- package/dist/resolvers/TestQuerySQLResolver.js.map +1 -0
- package/package.json +59 -59
- package/src/__tests__/bcsaas-integration.test.ts +1 -1
- package/src/agents/skip-sdk.ts +22 -0
- package/src/index.ts +111 -96
- package/src/middleware/BaseServerMiddleware.ts +141 -0
- package/src/middleware/MJTenantFilterMiddleware.ts +39 -0
- package/src/middleware/index.ts +2 -0
- package/src/resolvers/GetDataResolver.ts +2 -1
- package/src/resolvers/{CreateQueryResolver.ts → QuerySystemUserResolver.ts} +143 -413
- package/src/resolvers/TestQuerySQLResolver.ts +149 -0
- package/dist/hooks.d.ts +0 -65
- package/dist/hooks.d.ts.map +0 -1
- package/dist/hooks.js +0 -14
- package/dist/hooks.js.map +0 -1
- package/dist/resolvers/CreateQueryResolver.d.ts.map +0 -1
- package/dist/resolvers/CreateQueryResolver.js.map +0 -1
- package/dist/test-dynamic-plugin.d.ts +0 -6
- package/dist/test-dynamic-plugin.d.ts.map +0 -1
- package/dist/test-dynamic-plugin.js +0 -18
- package/dist/test-dynamic-plugin.js.map +0 -1
- package/src/hooks.ts +0 -77
- package/src/test-dynamic-plugin.ts +0 -36
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QuerySystemUserResolver.js","sourceRoot":"","sources":["../../src/resolvers/QuerySystemUserResolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { AppContext } from '../types.js';
|
|
2
|
+
import { ResolverBase } from '../generic/ResolverBase.js';
|
|
3
|
+
/**
|
|
4
|
+
* GraphQL input type for inline dependency queries.
|
|
5
|
+
* Self-referencing to support recursive dependency trees.
|
|
6
|
+
*/
|
|
7
|
+
export declare class QueryDependencySpecInput {
|
|
8
|
+
Name: string;
|
|
9
|
+
CategoryPath: string;
|
|
10
|
+
SQL: string;
|
|
11
|
+
UsesTemplate?: boolean;
|
|
12
|
+
Parameters?: Record<string, string>;
|
|
13
|
+
Dependencies?: QueryDependencySpecInput[];
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* GraphQL input type for transient query execution.
|
|
17
|
+
* Accepts the full QueryExecutionSpec shape for testing unsaved queries
|
|
18
|
+
* with composition + Nunjucks template processing.
|
|
19
|
+
*/
|
|
20
|
+
export declare class TestQuerySQLInput {
|
|
21
|
+
SQL: string;
|
|
22
|
+
Parameters?: Record<string, string>;
|
|
23
|
+
UsesTemplate?: boolean;
|
|
24
|
+
Dependencies?: QueryDependencySpecInput[];
|
|
25
|
+
MaxRows?: number;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* GraphQL output type for transient query execution results.
|
|
29
|
+
*/
|
|
30
|
+
export declare class TestQuerySQLResult {
|
|
31
|
+
Success: boolean;
|
|
32
|
+
Results?: string;
|
|
33
|
+
RowCount: number;
|
|
34
|
+
ExecutionTime: number;
|
|
35
|
+
ErrorMessage?: string;
|
|
36
|
+
AppliedParameters?: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Resolver for testing transient (unsaved) query SQL with full composition + Nunjucks template processing.
|
|
40
|
+
*
|
|
41
|
+
* This resolver exposes the lower-layer spec-based execution pipeline via GraphQL,
|
|
42
|
+
* enabling external systems (e.g., Skip-Brain) to test query SQL before saving to the database.
|
|
43
|
+
*
|
|
44
|
+
* Security:
|
|
45
|
+
* - Requires system user authentication (@RequireSystemUser)
|
|
46
|
+
* - Uses read-only database connection (no mutation possible)
|
|
47
|
+
* - Enforces MaxRows limit (default 100) to prevent unbounded queries
|
|
48
|
+
*
|
|
49
|
+
* @see https://github.com/MemberJunction/MJ/issues/2172
|
|
50
|
+
*/
|
|
51
|
+
export declare class TestQuerySQLResolver extends ResolverBase {
|
|
52
|
+
TestQuerySQL(input: TestQuerySQLInput, context: AppContext): Promise<TestQuerySQLResult>;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=TestQuerySQLResolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestQuerySQLResolver.d.ts","sourceRoot":"","sources":["../../src/resolvers/TestQuerySQLResolver.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;;GAGG;AACH,qBACa,wBAAwB;IAEjC,IAAI,EAAE,MAAM,CAAC;IAGb,YAAY,EAAE,MAAM,CAAC;IAGrB,GAAG,EAAE,MAAM,CAAC;IAGZ,YAAY,CAAC,EAAE,OAAO,CAAC;IAGvB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAGpC,YAAY,CAAC,EAAE,wBAAwB,EAAE,CAAC;CAC7C;AAED;;;;GAIG;AACH,qBACa,iBAAiB;IAE1B,GAAG,EAAE,MAAM,CAAC;IAGZ,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAGpC,YAAY,CAAC,EAAE,OAAO,CAAC;IAGvB,YAAY,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAG1C,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBACa,kBAAkB;IAE3B,OAAO,EAAE,OAAO,CAAC;IAGjB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IAGjB,aAAa,EAAE,MAAM,CAAC;IAGtB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;;;;;;;;;;GAYG;AACH,qBACa,oBAAqB,SAAQ,YAAY;IAK5C,YAAY,CACyB,KAAK,EAAE,iBAAiB,EACxD,OAAO,EAAE,UAAU,GAC3B,OAAO,CAAC,kBAAkB,CAAC;CA8CjC"}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
11
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
|
+
};
|
|
13
|
+
import { Arg, Ctx, Field, InputType, Int, ObjectType, Query, Resolver } from 'type-graphql';
|
|
14
|
+
import { GraphQLJSONObject } from 'graphql-type-json';
|
|
15
|
+
import { RunQuery, LogError, LogStatus } from '@memberjunction/core';
|
|
16
|
+
import { RequireSystemUser } from '../directives/RequireSystemUser.js';
|
|
17
|
+
import { GetReadOnlyProvider } from '../util.js';
|
|
18
|
+
import { ResolverBase } from '../generic/ResolverBase.js';
|
|
19
|
+
/**
|
|
20
|
+
* GraphQL input type for inline dependency queries.
|
|
21
|
+
* Self-referencing to support recursive dependency trees.
|
|
22
|
+
*/
|
|
23
|
+
let QueryDependencySpecInput = class QueryDependencySpecInput {
|
|
24
|
+
};
|
|
25
|
+
__decorate([
|
|
26
|
+
Field(() => String, { description: 'Query name as referenced in the composition token' }),
|
|
27
|
+
__metadata("design:type", String)
|
|
28
|
+
], QueryDependencySpecInput.prototype, "Name", void 0);
|
|
29
|
+
__decorate([
|
|
30
|
+
Field(() => String, { description: 'Category path as referenced in the composition token (e.g., "/Analytics/Sales/")' }),
|
|
31
|
+
__metadata("design:type", String)
|
|
32
|
+
], QueryDependencySpecInput.prototype, "CategoryPath", void 0);
|
|
33
|
+
__decorate([
|
|
34
|
+
Field(() => String, { description: 'The raw SQL for this dependency' }),
|
|
35
|
+
__metadata("design:type", String)
|
|
36
|
+
], QueryDependencySpecInput.prototype, "SQL", void 0);
|
|
37
|
+
__decorate([
|
|
38
|
+
Field(() => Boolean, { nullable: true, description: 'Whether this dependency uses Nunjucks template syntax' }),
|
|
39
|
+
__metadata("design:type", Boolean)
|
|
40
|
+
], QueryDependencySpecInput.prototype, "UsesTemplate", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
Field(() => GraphQLJSONObject, { nullable: true, description: 'Parameters for this dependency\'s Nunjucks templates' }),
|
|
43
|
+
__metadata("design:type", Object)
|
|
44
|
+
], QueryDependencySpecInput.prototype, "Parameters", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
Field(() => [QueryDependencySpecInput], { nullable: true, description: 'Nested dependencies (recursive)' }),
|
|
47
|
+
__metadata("design:type", Array)
|
|
48
|
+
], QueryDependencySpecInput.prototype, "Dependencies", void 0);
|
|
49
|
+
QueryDependencySpecInput = __decorate([
|
|
50
|
+
InputType()
|
|
51
|
+
], QueryDependencySpecInput);
|
|
52
|
+
export { QueryDependencySpecInput };
|
|
53
|
+
/**
|
|
54
|
+
* GraphQL input type for transient query execution.
|
|
55
|
+
* Accepts the full QueryExecutionSpec shape for testing unsaved queries
|
|
56
|
+
* with composition + Nunjucks template processing.
|
|
57
|
+
*/
|
|
58
|
+
let TestQuerySQLInput = class TestQuerySQLInput {
|
|
59
|
+
};
|
|
60
|
+
__decorate([
|
|
61
|
+
Field(() => String, { description: 'The raw SQL — may contain {{query:"..."}} and {{ param }} tokens' }),
|
|
62
|
+
__metadata("design:type", String)
|
|
63
|
+
], TestQuerySQLInput.prototype, "SQL", void 0);
|
|
64
|
+
__decorate([
|
|
65
|
+
Field(() => GraphQLJSONObject, { nullable: true, description: 'Parameter values for Nunjucks template substitution' }),
|
|
66
|
+
__metadata("design:type", Object)
|
|
67
|
+
], TestQuerySQLInput.prototype, "Parameters", void 0);
|
|
68
|
+
__decorate([
|
|
69
|
+
Field(() => Boolean, { nullable: true, description: 'Whether this query uses Nunjucks template syntax' }),
|
|
70
|
+
__metadata("design:type", Boolean)
|
|
71
|
+
], TestQuerySQLInput.prototype, "UsesTemplate", void 0);
|
|
72
|
+
__decorate([
|
|
73
|
+
Field(() => [QueryDependencySpecInput], { nullable: true, description: 'Inline dependency queries for composition resolution' }),
|
|
74
|
+
__metadata("design:type", Array)
|
|
75
|
+
], TestQuerySQLInput.prototype, "Dependencies", void 0);
|
|
76
|
+
__decorate([
|
|
77
|
+
Field(() => Int, { nullable: true, defaultValue: 100, description: 'Max rows to return (default: 100)' }),
|
|
78
|
+
__metadata("design:type", Number)
|
|
79
|
+
], TestQuerySQLInput.prototype, "MaxRows", void 0);
|
|
80
|
+
TestQuerySQLInput = __decorate([
|
|
81
|
+
InputType()
|
|
82
|
+
], TestQuerySQLInput);
|
|
83
|
+
export { TestQuerySQLInput };
|
|
84
|
+
/**
|
|
85
|
+
* GraphQL output type for transient query execution results.
|
|
86
|
+
*/
|
|
87
|
+
let TestQuerySQLResult = class TestQuerySQLResult {
|
|
88
|
+
};
|
|
89
|
+
__decorate([
|
|
90
|
+
Field(() => Boolean, { description: 'Whether the query executed successfully' }),
|
|
91
|
+
__metadata("design:type", Boolean)
|
|
92
|
+
], TestQuerySQLResult.prototype, "Success", void 0);
|
|
93
|
+
__decorate([
|
|
94
|
+
Field(() => String, { nullable: true, description: 'JSON-stringified result rows' }),
|
|
95
|
+
__metadata("design:type", String)
|
|
96
|
+
], TestQuerySQLResult.prototype, "Results", void 0);
|
|
97
|
+
__decorate([
|
|
98
|
+
Field(() => Int, { description: 'Number of rows returned' }),
|
|
99
|
+
__metadata("design:type", Number)
|
|
100
|
+
], TestQuerySQLResult.prototype, "RowCount", void 0);
|
|
101
|
+
__decorate([
|
|
102
|
+
Field(() => Int, { description: 'Execution time in milliseconds' }),
|
|
103
|
+
__metadata("design:type", Number)
|
|
104
|
+
], TestQuerySQLResult.prototype, "ExecutionTime", void 0);
|
|
105
|
+
__decorate([
|
|
106
|
+
Field(() => String, { nullable: true, description: 'Error message if execution failed' }),
|
|
107
|
+
__metadata("design:type", String)
|
|
108
|
+
], TestQuerySQLResult.prototype, "ErrorMessage", void 0);
|
|
109
|
+
__decorate([
|
|
110
|
+
Field(() => String, { nullable: true, description: 'JSON-stringified applied parameters including defaults' }),
|
|
111
|
+
__metadata("design:type", String)
|
|
112
|
+
], TestQuerySQLResult.prototype, "AppliedParameters", void 0);
|
|
113
|
+
TestQuerySQLResult = __decorate([
|
|
114
|
+
ObjectType()
|
|
115
|
+
], TestQuerySQLResult);
|
|
116
|
+
export { TestQuerySQLResult };
|
|
117
|
+
/**
|
|
118
|
+
* Resolver for testing transient (unsaved) query SQL with full composition + Nunjucks template processing.
|
|
119
|
+
*
|
|
120
|
+
* This resolver exposes the lower-layer spec-based execution pipeline via GraphQL,
|
|
121
|
+
* enabling external systems (e.g., Skip-Brain) to test query SQL before saving to the database.
|
|
122
|
+
*
|
|
123
|
+
* Security:
|
|
124
|
+
* - Requires system user authentication (@RequireSystemUser)
|
|
125
|
+
* - Uses read-only database connection (no mutation possible)
|
|
126
|
+
* - Enforces MaxRows limit (default 100) to prevent unbounded queries
|
|
127
|
+
*
|
|
128
|
+
* @see https://github.com/MemberJunction/MJ/issues/2172
|
|
129
|
+
*/
|
|
130
|
+
let TestQuerySQLResolver = class TestQuerySQLResolver extends ResolverBase {
|
|
131
|
+
async TestQuerySQL(input, context) {
|
|
132
|
+
try {
|
|
133
|
+
// Use read-only provider for security — no mutation possible
|
|
134
|
+
const provider = GetReadOnlyProvider(context.providers, { allowFallbackToReadWrite: false });
|
|
135
|
+
if (!provider) {
|
|
136
|
+
return {
|
|
137
|
+
Success: false,
|
|
138
|
+
RowCount: 0,
|
|
139
|
+
ExecutionTime: 0,
|
|
140
|
+
ErrorMessage: 'Read-only data source is not available. TestQuerySQL requires a read-only connection for security.',
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
const rq = new RunQuery(provider);
|
|
144
|
+
const spec = {
|
|
145
|
+
SQL: input.SQL,
|
|
146
|
+
Parameters: input.Parameters,
|
|
147
|
+
UsesTemplate: input.UsesTemplate,
|
|
148
|
+
Dependencies: input.Dependencies,
|
|
149
|
+
MaxRows: input.MaxRows ?? 100,
|
|
150
|
+
};
|
|
151
|
+
LogStatus(`TestQuerySQL: Executing transient query (MaxRows=${spec.MaxRows}, UsesTemplate=${spec.UsesTemplate ?? false}, Dependencies=${spec.Dependencies?.length ?? 0})`);
|
|
152
|
+
const result = await rq.ExecuteFromSpec(spec, context.userPayload.userRecord);
|
|
153
|
+
return {
|
|
154
|
+
Success: result.Success,
|
|
155
|
+
Results: result.Results ? JSON.stringify(result.Results) : undefined,
|
|
156
|
+
RowCount: result.RowCount,
|
|
157
|
+
ExecutionTime: result.ExecutionTime,
|
|
158
|
+
ErrorMessage: result.ErrorMessage || undefined,
|
|
159
|
+
AppliedParameters: result.AppliedParameters ? JSON.stringify(result.AppliedParameters) : undefined,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
catch (err) {
|
|
163
|
+
LogError(err);
|
|
164
|
+
const errorMessage = err instanceof Error ? err.message : String(err);
|
|
165
|
+
return {
|
|
166
|
+
Success: false,
|
|
167
|
+
RowCount: 0,
|
|
168
|
+
ExecutionTime: 0,
|
|
169
|
+
ErrorMessage: `TestQuerySQL failed: ${errorMessage}`,
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
};
|
|
174
|
+
__decorate([
|
|
175
|
+
RequireSystemUser(),
|
|
176
|
+
Query(() => TestQuerySQLResult, {
|
|
177
|
+
description: 'Test transient SQL with full composition + Nunjucks template processing without requiring a saved query'
|
|
178
|
+
}),
|
|
179
|
+
__param(0, Arg('input', () => TestQuerySQLInput)),
|
|
180
|
+
__param(1, Ctx()),
|
|
181
|
+
__metadata("design:type", Function),
|
|
182
|
+
__metadata("design:paramtypes", [TestQuerySQLInput, Object]),
|
|
183
|
+
__metadata("design:returntype", Promise)
|
|
184
|
+
], TestQuerySQLResolver.prototype, "TestQuerySQL", null);
|
|
185
|
+
TestQuerySQLResolver = __decorate([
|
|
186
|
+
Resolver()
|
|
187
|
+
], TestQuerySQLResolver);
|
|
188
|
+
export { TestQuerySQLResolver };
|
|
189
|
+
//# sourceMappingURL=TestQuerySQLResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestQuerySQLResolver.js","sourceRoot":"","sources":["../../src/resolvers/TestQuerySQLResolver.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/server",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.14.0",
|
|
4
4
|
"description": "MemberJunction: This project provides API access via GraphQL to the common data store.",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./src/index.ts",
|
|
@@ -27,62 +27,62 @@
|
|
|
27
27
|
"@as-integrations/express5": "^1.0.0",
|
|
28
28
|
"@graphql-tools/schema": "latest",
|
|
29
29
|
"@graphql-tools/utils": "^11.0.0",
|
|
30
|
-
"@memberjunction/actions": "5.
|
|
31
|
-
"@memberjunction/actions-base": "5.
|
|
32
|
-
"@memberjunction/actions-apollo": "5.
|
|
33
|
-
"@memberjunction/actions-bizapps-accounting": "5.
|
|
34
|
-
"@memberjunction/actions-bizapps-crm": "5.
|
|
35
|
-
"@memberjunction/actions-bizapps-formbuilders": "5.
|
|
36
|
-
"@memberjunction/actions-bizapps-lms": "5.
|
|
37
|
-
"@memberjunction/actions-bizapps-social": "5.
|
|
38
|
-
"@memberjunction/ai": "5.
|
|
39
|
-
"@memberjunction/ai-mcp-client": "5.
|
|
40
|
-
"@memberjunction/ai-agent-manager": "5.
|
|
41
|
-
"@memberjunction/ai-agent-manager-actions": "5.
|
|
42
|
-
"@memberjunction/ai-agents": "5.
|
|
43
|
-
"@memberjunction/ai-core-plus": "5.
|
|
44
|
-
"@memberjunction/ai-prompts": "5.
|
|
45
|
-
"@memberjunction/ai-provider-bundle": "5.
|
|
46
|
-
"@memberjunction/ai-vectors-pinecone": "5.
|
|
47
|
-
"@memberjunction/aiengine": "5.
|
|
48
|
-
"@memberjunction/communication-ms-graph": "5.
|
|
49
|
-
"@memberjunction/communication-sendgrid": "5.
|
|
50
|
-
"@memberjunction/communication-types": "5.
|
|
51
|
-
"@memberjunction/component-registry-client-sdk": "5.
|
|
52
|
-
"@memberjunction/config": "5.
|
|
53
|
-
"@memberjunction/core": "5.
|
|
54
|
-
"@memberjunction/core-actions": "5.
|
|
55
|
-
"@memberjunction/core-entities": "5.
|
|
56
|
-
"@memberjunction/core-entities-server": "5.
|
|
57
|
-
"@memberjunction/data-context": "5.
|
|
58
|
-
"@memberjunction/data-context-server": "5.
|
|
59
|
-
"@memberjunction/doc-utils": "5.
|
|
60
|
-
"@memberjunction/api-keys": "5.
|
|
61
|
-
"@memberjunction/encryption": "5.
|
|
62
|
-
"@memberjunction/entity-communications-base": "5.
|
|
63
|
-
"@memberjunction/entity-communications-server": "5.
|
|
64
|
-
"@memberjunction/external-change-detection": "5.
|
|
65
|
-
"@memberjunction/generic-database-provider": "5.
|
|
66
|
-
"@memberjunction/global": "5.
|
|
67
|
-
"@memberjunction/graphql-dataprovider": "5.
|
|
68
|
-
"@memberjunction/integration-engine": "5.
|
|
69
|
-
"@memberjunction/integration-schema-builder": "5.
|
|
70
|
-
"@memberjunction/interactive-component-types": "5.
|
|
71
|
-
"@memberjunction/computer-use-engine": "5.
|
|
72
|
-
"@memberjunction/notifications": "5.
|
|
73
|
-
"@memberjunction/queue": "5.
|
|
74
|
-
"@memberjunction/redis-provider": "5.
|
|
75
|
-
"@memberjunction/scheduling-actions": "5.
|
|
76
|
-
"@memberjunction/scheduling-base-types": "5.
|
|
77
|
-
"@memberjunction/scheduling-engine": "5.
|
|
78
|
-
"@memberjunction/scheduling-engine-base": "5.
|
|
79
|
-
"@memberjunction/skip-types": "5.
|
|
80
|
-
"@memberjunction/sqlserver-dataprovider": "5.
|
|
81
|
-
"@memberjunction/storage": "5.
|
|
82
|
-
"@memberjunction/templates": "5.
|
|
83
|
-
"@memberjunction/testing-engine": "5.
|
|
84
|
-
"@memberjunction/testing-engine-base": "5.
|
|
85
|
-
"@memberjunction/version-history": "5.
|
|
30
|
+
"@memberjunction/actions": "5.14.0",
|
|
31
|
+
"@memberjunction/actions-base": "5.14.0",
|
|
32
|
+
"@memberjunction/actions-apollo": "5.14.0",
|
|
33
|
+
"@memberjunction/actions-bizapps-accounting": "5.14.0",
|
|
34
|
+
"@memberjunction/actions-bizapps-crm": "5.14.0",
|
|
35
|
+
"@memberjunction/actions-bizapps-formbuilders": "5.14.0",
|
|
36
|
+
"@memberjunction/actions-bizapps-lms": "5.14.0",
|
|
37
|
+
"@memberjunction/actions-bizapps-social": "5.14.0",
|
|
38
|
+
"@memberjunction/ai": "5.14.0",
|
|
39
|
+
"@memberjunction/ai-mcp-client": "5.14.0",
|
|
40
|
+
"@memberjunction/ai-agent-manager": "5.14.0",
|
|
41
|
+
"@memberjunction/ai-agent-manager-actions": "5.14.0",
|
|
42
|
+
"@memberjunction/ai-agents": "5.14.0",
|
|
43
|
+
"@memberjunction/ai-core-plus": "5.14.0",
|
|
44
|
+
"@memberjunction/ai-prompts": "5.14.0",
|
|
45
|
+
"@memberjunction/ai-provider-bundle": "5.14.0",
|
|
46
|
+
"@memberjunction/ai-vectors-pinecone": "5.14.0",
|
|
47
|
+
"@memberjunction/aiengine": "5.14.0",
|
|
48
|
+
"@memberjunction/communication-ms-graph": "5.14.0",
|
|
49
|
+
"@memberjunction/communication-sendgrid": "5.14.0",
|
|
50
|
+
"@memberjunction/communication-types": "5.14.0",
|
|
51
|
+
"@memberjunction/component-registry-client-sdk": "5.14.0",
|
|
52
|
+
"@memberjunction/config": "5.14.0",
|
|
53
|
+
"@memberjunction/core": "5.14.0",
|
|
54
|
+
"@memberjunction/core-actions": "5.14.0",
|
|
55
|
+
"@memberjunction/core-entities": "5.14.0",
|
|
56
|
+
"@memberjunction/core-entities-server": "5.14.0",
|
|
57
|
+
"@memberjunction/data-context": "5.14.0",
|
|
58
|
+
"@memberjunction/data-context-server": "5.14.0",
|
|
59
|
+
"@memberjunction/doc-utils": "5.14.0",
|
|
60
|
+
"@memberjunction/api-keys": "5.14.0",
|
|
61
|
+
"@memberjunction/encryption": "5.14.0",
|
|
62
|
+
"@memberjunction/entity-communications-base": "5.14.0",
|
|
63
|
+
"@memberjunction/entity-communications-server": "5.14.0",
|
|
64
|
+
"@memberjunction/external-change-detection": "5.14.0",
|
|
65
|
+
"@memberjunction/generic-database-provider": "5.14.0",
|
|
66
|
+
"@memberjunction/global": "5.14.0",
|
|
67
|
+
"@memberjunction/graphql-dataprovider": "5.14.0",
|
|
68
|
+
"@memberjunction/integration-engine": "5.14.0",
|
|
69
|
+
"@memberjunction/integration-schema-builder": "5.14.0",
|
|
70
|
+
"@memberjunction/interactive-component-types": "5.14.0",
|
|
71
|
+
"@memberjunction/computer-use-engine": "5.14.0",
|
|
72
|
+
"@memberjunction/notifications": "5.14.0",
|
|
73
|
+
"@memberjunction/queue": "5.14.0",
|
|
74
|
+
"@memberjunction/redis-provider": "5.14.0",
|
|
75
|
+
"@memberjunction/scheduling-actions": "5.14.0",
|
|
76
|
+
"@memberjunction/scheduling-base-types": "5.14.0",
|
|
77
|
+
"@memberjunction/scheduling-engine": "5.14.0",
|
|
78
|
+
"@memberjunction/scheduling-engine-base": "5.14.0",
|
|
79
|
+
"@memberjunction/skip-types": "5.14.0",
|
|
80
|
+
"@memberjunction/sqlserver-dataprovider": "5.14.0",
|
|
81
|
+
"@memberjunction/storage": "5.14.0",
|
|
82
|
+
"@memberjunction/templates": "5.14.0",
|
|
83
|
+
"@memberjunction/testing-engine": "5.14.0",
|
|
84
|
+
"@memberjunction/testing-engine-base": "5.14.0",
|
|
85
|
+
"@memberjunction/version-history": "5.14.0",
|
|
86
86
|
"@types/compression": "^1.8.1",
|
|
87
87
|
"@types/cors": "^2.8.19",
|
|
88
88
|
"@types/jsonwebtoken": "9.0.10",
|
|
@@ -107,8 +107,8 @@
|
|
|
107
107
|
"jwks-rsa": "^3.2.2",
|
|
108
108
|
"lru-cache": "^11.2.5",
|
|
109
109
|
"mssql": "^12.2.0",
|
|
110
|
-
"@memberjunction/postgresql-dataprovider": "5.
|
|
111
|
-
"@memberjunction/sql-dialect": "5.
|
|
110
|
+
"@memberjunction/postgresql-dataprovider": "5.14.0",
|
|
111
|
+
"@memberjunction/sql-dialect": "5.14.0",
|
|
112
112
|
"pg": "^8.13.3",
|
|
113
113
|
"@types/pg": "^8.11.11",
|
|
114
114
|
"reflect-metadata": "0.2.2",
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* BCSaaS Integration Tests — Phase 4, 5, 6
|
|
3
3
|
*
|
|
4
4
|
* Tests the BCSaaS middle-layer plugin architecture against a RUNNING MJAPI instance
|
|
5
|
-
* that has BCSaaS loaded via
|
|
5
|
+
* that has BCSaaS loaded via @RegisterClass(BaseServerMiddleware) and a database with BCSaaS entities.
|
|
6
6
|
*
|
|
7
7
|
* Test data setup (mj_test database):
|
|
8
8
|
* - Organizations: Acme Corp (11111111-...), Beta Inc (22222222-...), Acme West Division (33333333-...)
|
package/src/agents/skip-sdk.ts
CHANGED
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
SkipResponsePhase,
|
|
17
17
|
SkipAPIRequestAPIKey,
|
|
18
18
|
SkipQueryInfo,
|
|
19
|
+
SkipQueryCatalogEntry,
|
|
19
20
|
SkipEntityInfo,
|
|
20
21
|
SkipEntityFieldInfo,
|
|
21
22
|
SkipEntityFieldValueInfo,
|
|
@@ -360,6 +361,7 @@ export class SkipSDK {
|
|
|
360
361
|
payload, // Pass through payload for incremental artifact building (e.g., PRD in progress)
|
|
361
362
|
entities: baseRequest.entities || [],
|
|
362
363
|
queries: baseRequest.queries || [],
|
|
364
|
+
queryCatalog: baseRequest.queryCatalog,
|
|
363
365
|
notes: baseRequest.notes,
|
|
364
366
|
noteTypes: baseRequest.noteTypes,
|
|
365
367
|
userEmail: baseRequest.userEmail,
|
|
@@ -391,6 +393,9 @@ export class SkipSDK {
|
|
|
391
393
|
): Promise<Partial<SkipAPIRequest>> {
|
|
392
394
|
const entities = includeEntities ? await this.buildEntities(dataSource, forceEntityRefresh) : [];
|
|
393
395
|
const queries = includeQueries ? this.buildQueries() : [];
|
|
396
|
+
// Always build the lightweight query catalog for collision detection,
|
|
397
|
+
// regardless of whether full queries are included
|
|
398
|
+
const queryCatalog = this.buildQueryCatalog();
|
|
394
399
|
const { notes, noteTypes } = includeNotes ? await this.buildAgentNotes(contextUser) : { notes: [], noteTypes: [] };
|
|
395
400
|
// Note: requests would be built here if includeRequests is true
|
|
396
401
|
|
|
@@ -415,6 +420,7 @@ export class SkipSDK {
|
|
|
415
420
|
return {
|
|
416
421
|
entities,
|
|
417
422
|
queries,
|
|
423
|
+
queryCatalog,
|
|
418
424
|
notes,
|
|
419
425
|
noteTypes,
|
|
420
426
|
userEmail: contextUser.Email,
|
|
@@ -524,6 +530,22 @@ export class SkipSDK {
|
|
|
524
530
|
return parentPath ? `${parentPath}/${cat.Name}` : cat.Name;
|
|
525
531
|
}
|
|
526
532
|
|
|
533
|
+
/**
|
|
534
|
+
* Build a lightweight catalog of ALL query names and category paths (regardless of status).
|
|
535
|
+
* Always called regardless of includeQueries, so collision detection
|
|
536
|
+
* has accurate data even when full query metadata is not transmitted.
|
|
537
|
+
* Includes all statuses because the database enforces name+category uniqueness
|
|
538
|
+
* across all queries, not just approved ones.
|
|
539
|
+
*/
|
|
540
|
+
private buildQueryCatalog(): SkipQueryCatalogEntry[] {
|
|
541
|
+
const md = new Metadata();
|
|
542
|
+
|
|
543
|
+
return md.Queries.map((q) => ({
|
|
544
|
+
Name: q.Name,
|
|
545
|
+
CategoryPath: this.buildQueryCategoryPath(md, q.CategoryID)
|
|
546
|
+
}));
|
|
547
|
+
}
|
|
548
|
+
|
|
527
549
|
/**
|
|
528
550
|
* Build agent notes for Skip
|
|
529
551
|
*/
|