agentlang 0.0.5 → 0.0.7
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/out/language/generated/ast.d.ts +7 -7
- package/out/language/generated/ast.d.ts.map +1 -1
- package/out/language/generated/ast.js +1 -1
- package/out/language/generated/ast.js.map +1 -1
- package/out/language/generated/grammar.js +5 -5
- package/out/language/main.cjs +6 -6
- package/out/language/main.cjs.map +2 -2
- package/out/language/parser.d.ts.map +1 -1
- package/out/language/parser.js +21 -5
- package/out/language/parser.js.map +1 -1
- package/out/language/syntax.d.ts +8 -2
- package/out/language/syntax.d.ts.map +1 -1
- package/out/language/syntax.js +42 -2
- package/out/language/syntax.js.map +1 -1
- package/out/runtime/agents/common.d.ts +1 -1
- package/out/runtime/agents/common.d.ts.map +1 -1
- package/out/runtime/agents/common.js +48 -0
- package/out/runtime/agents/common.js.map +1 -1
- package/out/runtime/agents/impl/openai.js +1 -1
- package/out/runtime/agents/impl/openai.js.map +1 -1
- package/out/runtime/auth/cognito.d.ts +2 -0
- package/out/runtime/auth/cognito.d.ts.map +1 -1
- package/out/runtime/auth/cognito.js +115 -15
- package/out/runtime/auth/cognito.js.map +1 -1
- package/out/runtime/auth/interface.d.ts +2 -0
- package/out/runtime/auth/interface.d.ts.map +1 -1
- package/out/runtime/interpreter.d.ts.map +1 -1
- package/out/runtime/interpreter.js +64 -16
- package/out/runtime/interpreter.js.map +1 -1
- package/out/runtime/jsmodules.d.ts +6 -0
- package/out/runtime/jsmodules.d.ts.map +1 -0
- package/out/runtime/jsmodules.js +138 -0
- package/out/runtime/jsmodules.js.map +1 -0
- package/out/runtime/loader.d.ts.map +1 -1
- package/out/runtime/loader.js +11 -11
- package/out/runtime/loader.js.map +1 -1
- package/out/runtime/module.d.ts +14 -1
- package/out/runtime/module.d.ts.map +1 -1
- package/out/runtime/module.js +96 -17
- package/out/runtime/module.js.map +1 -1
- package/out/runtime/modules/ai.d.ts +1 -0
- package/out/runtime/modules/ai.d.ts.map +1 -1
- package/out/runtime/modules/ai.js +20 -11
- package/out/runtime/modules/ai.js.map +1 -1
- package/out/runtime/modules/auth.d.ts +7 -3
- package/out/runtime/modules/auth.d.ts.map +1 -1
- package/out/runtime/modules/auth.js +129 -8
- package/out/runtime/modules/auth.js.map +1 -1
- package/out/runtime/resolvers/interface.d.ts +0 -1
- package/out/runtime/resolvers/interface.d.ts.map +1 -1
- package/out/runtime/resolvers/interface.js.map +1 -1
- package/out/runtime/resolvers/sqldb/impl.d.ts.map +1 -1
- package/out/runtime/resolvers/sqldb/impl.js +9 -3
- package/out/runtime/resolvers/sqldb/impl.js.map +1 -1
- package/out/runtime/util.d.ts +0 -4
- package/out/runtime/util.d.ts.map +1 -1
- package/out/runtime/util.js +0 -78
- package/out/runtime/util.js.map +1 -1
- package/package.json +1 -1
- package/src/language/agentlang.langium +3 -4
- package/src/language/generated/ast.ts +8 -8
- package/src/language/generated/grammar.ts +5 -5
- package/src/language/parser.ts +24 -5
- package/src/language/syntax.ts +50 -5
- package/src/runtime/agents/common.ts +48 -0
- package/src/runtime/agents/impl/openai.ts +1 -1
- package/src/runtime/auth/cognito.ts +152 -22
- package/src/runtime/auth/interface.ts +7 -0
- package/src/runtime/interpreter.ts +63 -18
- package/src/runtime/jsmodules.ts +123 -0
- package/src/runtime/loader.ts +11 -10
- package/src/runtime/module.ts +113 -18
- package/src/runtime/modules/ai.ts +22 -14
- package/src/runtime/modules/auth.ts +156 -8
- package/src/runtime/resolvers/interface.ts +0 -1
- package/src/runtime/resolvers/sqldb/impl.ts +8 -3
- package/src/runtime/util.ts +0 -70
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ensureUser, ensureUserSession, findUser, findUserByEmail
|
|
1
|
+
import { ensureUser, ensureUserSession, findUser, findUserByEmail } from '../modules/auth.js';
|
|
2
2
|
import { logger } from '../logger.js';
|
|
3
3
|
import { sleepMilliseconds } from '../util.js';
|
|
4
4
|
import { CognitoJwtVerifier } from 'aws-jwt-verify';
|
|
@@ -8,9 +8,14 @@ let fromEnv = undefined;
|
|
|
8
8
|
let CognitoIdentityProviderClient = undefined;
|
|
9
9
|
let SignUpCommand = undefined;
|
|
10
10
|
let AdminGetUserCommand = undefined;
|
|
11
|
+
let InitiateAuthCommand = undefined;
|
|
11
12
|
let AuthenticationDetails = undefined;
|
|
12
13
|
let CognitoUser = undefined;
|
|
13
14
|
let CognitoUserPool = undefined;
|
|
15
|
+
let CognitoUserSession = undefined;
|
|
16
|
+
let CognitoIdToken = undefined;
|
|
17
|
+
let CognitoAccessToken = undefined;
|
|
18
|
+
let CognitoRefreshToken = undefined;
|
|
14
19
|
if (isNodeEnv) {
|
|
15
20
|
const cp = await import('@aws-sdk/credential-providers');
|
|
16
21
|
fromEnv = cp.fromEnv;
|
|
@@ -18,10 +23,15 @@ if (isNodeEnv) {
|
|
|
18
23
|
CognitoIdentityProviderClient = cip.CognitoIdentityProviderClient;
|
|
19
24
|
SignUpCommand = cip.SignUpCommand;
|
|
20
25
|
AdminGetUserCommand = cip.AdminGetUserCommand;
|
|
26
|
+
InitiateAuthCommand = cip.InitiateAuthCommand;
|
|
21
27
|
const ci = await import('amazon-cognito-identity-js');
|
|
22
28
|
AuthenticationDetails = ci.AuthenticationDetails;
|
|
23
29
|
CognitoUser = ci.CognitoUser;
|
|
24
30
|
CognitoUserPool = ci.CognitoUserPool;
|
|
31
|
+
CognitoUserSession = ci.CognitoUserSession;
|
|
32
|
+
CognitoIdToken = ci.CognitoIdToken;
|
|
33
|
+
CognitoAccessToken = ci.CognitoAccessToken;
|
|
34
|
+
CognitoRefreshToken = ci.CognitoRefreshToken;
|
|
25
35
|
}
|
|
26
36
|
const defaultConfig = isNodeEnv
|
|
27
37
|
? new Map()
|
|
@@ -351,7 +361,7 @@ export class CognitoAuth {
|
|
|
351
361
|
const idToken = result.getIdToken().getJwtToken();
|
|
352
362
|
const accessToken = result.getAccessToken().getJwtToken();
|
|
353
363
|
const refreshToken = result.getRefreshToken().getToken();
|
|
354
|
-
const localSess = await ensureUserSession(userid, idToken, env);
|
|
364
|
+
const localSess = await ensureUserSession(userid, idToken, accessToken, refreshToken, env);
|
|
355
365
|
const sessInfo = {
|
|
356
366
|
sessionId: localSess.lookup('id'),
|
|
357
367
|
userId: userid,
|
|
@@ -423,7 +433,7 @@ export class CognitoAuth {
|
|
|
423
433
|
const idToken = result.getIdToken().getJwtToken();
|
|
424
434
|
const accessToken = result.getAccessToken().getJwtToken();
|
|
425
435
|
const refreshToken = result.getRefreshToken().getToken();
|
|
426
|
-
const localSess = await ensureUserSession(userid, idToken, env);
|
|
436
|
+
const localSess = await ensureUserSession(userid, idToken, accessToken, refreshToken, env);
|
|
427
437
|
const sessInfo = {
|
|
428
438
|
sessionId: localSess.lookup('id'),
|
|
429
439
|
userId: userid,
|
|
@@ -451,24 +461,29 @@ export class CognitoAuth {
|
|
|
451
461
|
return;
|
|
452
462
|
}
|
|
453
463
|
const user = new CognitoUser({
|
|
454
|
-
Username: localUser.email,
|
|
464
|
+
Username: localUser.lookup('email'),
|
|
455
465
|
Pool: this.fetchUserPool(),
|
|
456
466
|
});
|
|
457
467
|
let done = false;
|
|
458
468
|
let logoutError;
|
|
459
|
-
|
|
460
|
-
|
|
469
|
+
const session = new CognitoUserSession({
|
|
470
|
+
IdToken: new CognitoIdToken({ IdToken: sessionInfo.idToken }),
|
|
471
|
+
AccessToken: new CognitoAccessToken({ AccessToken: sessionInfo.accessToken }),
|
|
472
|
+
RefreshToken: new CognitoRefreshToken({ RefreshToken: sessionInfo.refreshToken }),
|
|
461
473
|
});
|
|
462
|
-
|
|
463
|
-
user.
|
|
464
|
-
|
|
474
|
+
user.setSignInUserSession(session);
|
|
475
|
+
user.globalSignOut({
|
|
476
|
+
onSuccess: function () {
|
|
477
|
+
done = true;
|
|
478
|
+
},
|
|
479
|
+
onFailure: function (err) {
|
|
480
|
+
done = true;
|
|
465
481
|
logger.error(`Cognito signOut error for user ${sessionInfo.userId}:`, {
|
|
466
482
|
errorName: err.name,
|
|
467
483
|
errorMessage: sanitizeErrorMessage(err.message),
|
|
468
484
|
});
|
|
469
485
|
logoutError = err;
|
|
470
|
-
}
|
|
471
|
-
done = true;
|
|
486
|
+
},
|
|
472
487
|
});
|
|
473
488
|
while (!done) {
|
|
474
489
|
await sleepMilliseconds(100);
|
|
@@ -477,10 +492,6 @@ export class CognitoAuth {
|
|
|
477
492
|
logger.error(`Error during Cognito logout for user ${sessionInfo.userId}: ${logoutError.message}`);
|
|
478
493
|
// Continue with local session cleanup even if Cognito logout fails
|
|
479
494
|
}
|
|
480
|
-
const sess = await findUserSession(localUser.id, env);
|
|
481
|
-
if (sess) {
|
|
482
|
-
await removeSession(sess.id, env);
|
|
483
|
-
}
|
|
484
495
|
logger.debug(`Successfully logged out user ${sessionInfo.userId}`);
|
|
485
496
|
if (cb)
|
|
486
497
|
cb(true);
|
|
@@ -492,6 +503,43 @@ export class CognitoAuth {
|
|
|
492
503
|
throw err;
|
|
493
504
|
}
|
|
494
505
|
}
|
|
506
|
+
async changePassword(sessionInfo, newPassword, oldPassword, env) {
|
|
507
|
+
const localUser = await findUser(sessionInfo.userId, env);
|
|
508
|
+
if (!localUser) {
|
|
509
|
+
logger.warn(`User ${sessionInfo.userId} not found for password-change`);
|
|
510
|
+
return false;
|
|
511
|
+
}
|
|
512
|
+
const email = localUser.lookup('email');
|
|
513
|
+
const user = new CognitoUser({
|
|
514
|
+
Username: email,
|
|
515
|
+
Pool: this.fetchUserPool(),
|
|
516
|
+
});
|
|
517
|
+
const session = new CognitoUserSession({
|
|
518
|
+
IdToken: new CognitoIdToken({ IdToken: sessionInfo.idToken }),
|
|
519
|
+
AccessToken: new CognitoAccessToken({ AccessToken: sessionInfo.accessToken }),
|
|
520
|
+
RefreshToken: new CognitoRefreshToken({ RefreshToken: sessionInfo.refreshToken }),
|
|
521
|
+
});
|
|
522
|
+
user.setSignInUserSession(session);
|
|
523
|
+
let done = false;
|
|
524
|
+
let cpErr = undefined;
|
|
525
|
+
user.changePassword(oldPassword, newPassword, (err, _) => {
|
|
526
|
+
if (err) {
|
|
527
|
+
done = true;
|
|
528
|
+
cpErr = err;
|
|
529
|
+
}
|
|
530
|
+
else {
|
|
531
|
+
done = true;
|
|
532
|
+
}
|
|
533
|
+
});
|
|
534
|
+
while (!done) {
|
|
535
|
+
await sleepMilliseconds(100);
|
|
536
|
+
}
|
|
537
|
+
if (cpErr) {
|
|
538
|
+
logger.warn(`Failed to change the password for ${email} - ${cpErr.message}`);
|
|
539
|
+
return false;
|
|
540
|
+
}
|
|
541
|
+
return true;
|
|
542
|
+
}
|
|
495
543
|
fetchUserPool() {
|
|
496
544
|
if (this.userPool) {
|
|
497
545
|
return this.userPool;
|
|
@@ -649,5 +697,57 @@ export class CognitoAuth {
|
|
|
649
697
|
};
|
|
650
698
|
}
|
|
651
699
|
}
|
|
700
|
+
async refreshToken(refreshTokenString, env) {
|
|
701
|
+
try {
|
|
702
|
+
// Use InitiateAuth with REFRESH_TOKEN_AUTH flow
|
|
703
|
+
const client = new CognitoIdentityProviderClient({
|
|
704
|
+
region: process.env.AWS_REGION || 'us-west-2',
|
|
705
|
+
credentials: fromEnv(),
|
|
706
|
+
});
|
|
707
|
+
const command = new InitiateAuthCommand({
|
|
708
|
+
AuthFlow: 'REFRESH_TOKEN_AUTH',
|
|
709
|
+
ClientId: this.fetchClientId(),
|
|
710
|
+
AuthParameters: {
|
|
711
|
+
REFRESH_TOKEN: refreshTokenString,
|
|
712
|
+
},
|
|
713
|
+
});
|
|
714
|
+
const response = await client.send(command);
|
|
715
|
+
if (!response.AuthenticationResult) {
|
|
716
|
+
throw new UnauthorisedError('Token refresh failed');
|
|
717
|
+
}
|
|
718
|
+
const newIdToken = response.AuthenticationResult.IdToken;
|
|
719
|
+
const newAccessToken = response.AuthenticationResult.AccessToken;
|
|
720
|
+
const newRefreshToken = response.AuthenticationResult.RefreshToken || refreshTokenString;
|
|
721
|
+
// Extract user info from the new ID token
|
|
722
|
+
const idTokenPayload = JSON.parse(atob(newIdToken.split('.')[1]));
|
|
723
|
+
const userEmail = idTokenPayload.email;
|
|
724
|
+
// Find or create local user
|
|
725
|
+
let localUser = await findUserByEmail(userEmail, env);
|
|
726
|
+
if (!localUser) {
|
|
727
|
+
localUser = await ensureUser(userEmail, '', '', env);
|
|
728
|
+
}
|
|
729
|
+
const userId = localUser.lookup('id');
|
|
730
|
+
// Update local session
|
|
731
|
+
const updatedSession = await ensureUserSession(userId, newIdToken, newAccessToken, newRefreshToken, env);
|
|
732
|
+
const sessInfo = {
|
|
733
|
+
sessionId: updatedSession.lookup('id'),
|
|
734
|
+
userId: userId,
|
|
735
|
+
authToken: newIdToken,
|
|
736
|
+
idToken: newIdToken,
|
|
737
|
+
accessToken: newAccessToken,
|
|
738
|
+
refreshToken: newRefreshToken,
|
|
739
|
+
systemSesionInfo: response.AuthenticationResult,
|
|
740
|
+
};
|
|
741
|
+
return sessInfo;
|
|
742
|
+
}
|
|
743
|
+
catch (err) {
|
|
744
|
+
logger.error(`Refresh token operation failed: ${err.message}`);
|
|
745
|
+
if (err.name === 'NotAuthorizedException') {
|
|
746
|
+
throw new UnauthorisedError('Invalid or expired refresh token');
|
|
747
|
+
}
|
|
748
|
+
handleCognitoError(err, 'refreshToken');
|
|
749
|
+
throw err; // This line won't be reached due to handleCognitoError throwing
|
|
750
|
+
}
|
|
751
|
+
}
|
|
652
752
|
}
|
|
653
753
|
//# sourceMappingURL=cognito.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cognito.js","sourceRoot":"","sources":["../../../src/runtime/auth/cognito.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cognito.js","sourceRoot":"","sources":["../../../src/runtime/auth/cognito.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,5 +23,7 @@ export interface AgentlangAuth {
|
|
|
23
23
|
verifyToken(token: string, env?: Environment): any;
|
|
24
24
|
getUser(userId: string, env: Environment): Promise<UserInfo>;
|
|
25
25
|
getUserByEmail(email: string, env: Environment): Promise<UserInfo>;
|
|
26
|
+
changePassword(sessionInfo: SessionInfo, newPassword: string, oldPassword: string, env: Environment): Promise<boolean>;
|
|
27
|
+
refreshToken(refreshToken: string, env: Environment): Promise<SessionInfo>;
|
|
26
28
|
}
|
|
27
29
|
//# sourceMappingURL=interface.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/runtime/auth/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,GAAG,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,GAAG,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;AAC1D,MAAM,MAAM,aAAa,GAAG,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;AAC/D,MAAM,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC5B,MAAM,CACJ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EACtC,GAAG,EAAE,WAAW,EAChB,EAAE,EAAE,cAAc,GACjB,GAAG,CAAC;IACP,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,aAAa,GAAG,GAAG,CAAC;IACpF,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,cAAc,GAAG,GAAG,CAAC;IAC7E,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,GAAG,GAAG,CAAC;IACnD,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7D,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/runtime/auth/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,GAAG,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,GAAG,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;AAC1D,MAAM,MAAM,aAAa,GAAG,CAAC,WAAW,EAAE,WAAW,KAAK,IAAI,CAAC;AAC/D,MAAM,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC5B,MAAM,CACJ,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EACtC,GAAG,EAAE,WAAW,EAChB,EAAE,EAAE,cAAc,GACjB,GAAG,CAAC;IACP,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,aAAa,GAAG,GAAG,CAAC;IACpF,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,EAAE,cAAc,GAAG,GAAG,CAAC;IAC7E,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,GAAG,GAAG,CAAC;IACnD,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC7D,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnE,cAAc,CACZ,WAAW,EAAE,WAAW,EACxB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,WAAW,GACf,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,YAAY,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CAC5E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interpreter.d.ts","sourceRoot":"","sources":["../../src/runtime/interpreter.ts"],"names":[],"mappings":"AAAA,OAAO,EAyBL,SAAS,EACV,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAKL,QAAQ,EAaR,YAAY,EAEb,MAAM,aAAa,CAAC;AACrB,OAAO,EAAY,QAAQ,EAAoB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"interpreter.d.ts","sourceRoot":"","sources":["../../src/runtime/interpreter.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { isBinExpr, isGroup, isLiteral, isNegExpr, isNotExpr, } from '../languag
|
|
|
2
2
|
import { defineAgentEvent, getOneOfRef, getRelationship, getWorkflow, Instance, isAgentEventInstance, isBetweenRelationship, isContainsRelationship, isEmptyWorkflow, isEntityInstance, isEventInstance, isInstanceOfType, isTimer, makeInstance, newInstanceAttributes, PlaceholderRecordEntry, } from './module.js';
|
|
3
3
|
import { Resolver, ResolverAuthInfo } from './resolvers/interface.js';
|
|
4
4
|
import { SqlDbResolver } from './resolvers/sqldb/impl.js';
|
|
5
|
-
import { CrudType, DefaultModuleName, escapeFqName, escapeQueryName, fqNameFromPath,
|
|
5
|
+
import { CrudType, DefaultModuleName, escapeFqName, escapeQueryName, fqNameFromPath, isFqName, isPath, isString, makeFqName, QuerySuffix, restoreSpecialChars, splitFqName, splitRefs, } from './util.js';
|
|
6
6
|
import { getResolver, getResolverNameForPath } from './resolvers/registry.js';
|
|
7
7
|
import { parseStatement, parseWorkflow } from '../language/parser.js';
|
|
8
8
|
import { AdminSession, AdminUserId } from './auth/defs.js';
|
|
@@ -10,6 +10,7 @@ import { AgentEntityName, AgentFqName, findAgentByName } from './modules/ai.js';
|
|
|
10
10
|
import { logger } from './logger.js';
|
|
11
11
|
import { ParentAttributeName, PathAttributeName, PathAttributeNameQuery } from './defs.js';
|
|
12
12
|
import { addCreateAudit, addDeleteAudit, addUpdateAudit, maybeCancelTimer, setTimerRunning, } from './modules/core.js';
|
|
13
|
+
import { invokeModuleFn } from './jsmodules.js';
|
|
13
14
|
const EmptyResult = null;
|
|
14
15
|
export function isEmptyResult(r) {
|
|
15
16
|
return r == EmptyResult;
|
|
@@ -440,8 +441,8 @@ export async function parseAndEvaluateStatement(stmtString, activeUserId, actiev
|
|
|
440
441
|
}
|
|
441
442
|
}
|
|
442
443
|
async function evaluatePattern(pat, env) {
|
|
443
|
-
if (pat.
|
|
444
|
-
await
|
|
444
|
+
if (pat.expr) {
|
|
445
|
+
await evaluateExpression(pat.expr, env);
|
|
445
446
|
}
|
|
446
447
|
else if (pat.crudMap) {
|
|
447
448
|
await evaluateCrudMap(pat.crudMap, env);
|
|
@@ -874,21 +875,62 @@ async function walkJoinQueryPattern(rp, joinsSpec, env) {
|
|
|
874
875
|
async function handleAgentInvocation(agentEventInst, env) {
|
|
875
876
|
const agent = await findAgentByName(agentEventInst.name, env);
|
|
876
877
|
await agent.invoke(agentEventInst.lookup('message'), env);
|
|
877
|
-
const result = env.getLastResult();
|
|
878
|
-
if (
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
878
|
+
const result = cleanupAgentResponse(env.getLastResult());
|
|
879
|
+
if (result) {
|
|
880
|
+
if (agent.isPlanner()) {
|
|
881
|
+
logger.debug(`Agent ${agent.name} generated pattern: ${result}`);
|
|
882
|
+
try {
|
|
883
|
+
let rs = result.trim();
|
|
884
|
+
if (rs.startsWith('[')) {
|
|
885
|
+
const stmts = rs.substring(1, rs.length - 1);
|
|
886
|
+
rs = `workflow T {${stmts}}`;
|
|
887
|
+
}
|
|
888
|
+
if (rs.startsWith('workflow')) {
|
|
889
|
+
const wf = await parseWorkflow(rs);
|
|
890
|
+
if (agent.runWorkflows) {
|
|
891
|
+
await evaluateStatements(wf.statements, env);
|
|
892
|
+
}
|
|
893
|
+
}
|
|
894
|
+
else {
|
|
895
|
+
env.setLastResult(await parseAndEvaluateStatement(rs, undefined, env));
|
|
896
|
+
}
|
|
884
897
|
}
|
|
885
|
-
|
|
886
|
-
|
|
898
|
+
catch (err) {
|
|
899
|
+
logger.error(`Failed to evaluate pattern generated by agent ${agent.name} - ${result}, ${err}`);
|
|
887
900
|
}
|
|
888
901
|
}
|
|
889
|
-
|
|
890
|
-
|
|
902
|
+
}
|
|
903
|
+
else {
|
|
904
|
+
logger.warn(`Agent ${agent.name} failed to generate a response`);
|
|
905
|
+
}
|
|
906
|
+
}
|
|
907
|
+
function cleanupAgentResponse(response) {
|
|
908
|
+
if (response) {
|
|
909
|
+
const resp = response.trim();
|
|
910
|
+
if (resp.startsWith('[') && resp.endsWith(']')) {
|
|
911
|
+
return resp;
|
|
891
912
|
}
|
|
913
|
+
const parts = resp.split('\n');
|
|
914
|
+
const validated = parts.filter((s) => {
|
|
915
|
+
const stmt = s.trim();
|
|
916
|
+
const r = stmt.startsWith('{') ||
|
|
917
|
+
stmt.startsWith('}') ||
|
|
918
|
+
stmt.startsWith('if') ||
|
|
919
|
+
stmt.startsWith('for') ||
|
|
920
|
+
stmt.startsWith('delete') ||
|
|
921
|
+
stmt.startsWith('workflow');
|
|
922
|
+
if (!r) {
|
|
923
|
+
const i = stmt.indexOf('(');
|
|
924
|
+
return i > 0 && stmt.indexOf(')') > i;
|
|
925
|
+
}
|
|
926
|
+
else {
|
|
927
|
+
return r;
|
|
928
|
+
}
|
|
929
|
+
});
|
|
930
|
+
return validated.join('\n');
|
|
931
|
+
}
|
|
932
|
+
else {
|
|
933
|
+
return response;
|
|
892
934
|
}
|
|
893
935
|
}
|
|
894
936
|
async function evaluateUpsert(crud, env) {
|
|
@@ -1089,7 +1131,13 @@ async function applyFn(fnCall, env, isAsync) {
|
|
|
1089
1131
|
if (fnCall.args != undefined) {
|
|
1090
1132
|
args = new Array();
|
|
1091
1133
|
for (let i = 0; i < fnCall.args.length; ++i) {
|
|
1092
|
-
|
|
1134
|
+
const arg = fnCall.args[i];
|
|
1135
|
+
if (isLiteral(arg)) {
|
|
1136
|
+
await evaluateLiteral(arg, env);
|
|
1137
|
+
}
|
|
1138
|
+
else {
|
|
1139
|
+
await evaluateExpression(arg, env);
|
|
1140
|
+
}
|
|
1093
1141
|
args.push(env.getLastResult());
|
|
1094
1142
|
}
|
|
1095
1143
|
args.push(env);
|
|
@@ -1111,7 +1159,7 @@ async function realizeMap(mapLiteral, env) {
|
|
|
1111
1159
|
for (let i = 0; i < mapLiteral.entries.length; ++i) {
|
|
1112
1160
|
const entry = mapLiteral.entries[i];
|
|
1113
1161
|
const k = getMapKey(entry.key);
|
|
1114
|
-
await
|
|
1162
|
+
await evaluateExpression(entry.value, env);
|
|
1115
1163
|
result.set(k, env.getLastResult());
|
|
1116
1164
|
}
|
|
1117
1165
|
env.setLastResult(Object.fromEntries(result.entries()));
|