From baab1127da5f72b97a1703f61f5182a1c7edcb5a Mon Sep 17 00:00:00 2001 From: danoswaltCL <97542869+danoswaltCL@users.noreply.github.com> Date: Thu, 14 Mar 2024 11:58:58 -0400 Subject: [PATCH 1/3] proper null coalescing in mark call for assignedcondition --- .../src/api/controllers/ExperimentClientController.v5.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/packages/Upgrade/src/api/controllers/ExperimentClientController.v5.ts b/backend/packages/Upgrade/src/api/controllers/ExperimentClientController.v5.ts index c30ea0a937..591ebee384 100644 --- a/backend/packages/Upgrade/src/api/controllers/ExperimentClientController.v5.ts +++ b/backend/packages/Upgrade/src/api/controllers/ExperimentClientController.v5.ts @@ -431,13 +431,13 @@ export class ExperimentClientController { experiment.userId, experiment.data.site, experiment.status, - experiment.data.assignedCondition.conditionCode, + experiment.data.assignedCondition?.conditionCode ?? null, { logger: request.logger, userDoc: experimentUserDoc, }, experiment.data.target, - experiment.data.assignedCondition.experimentId ? experiment.data.assignedCondition.experimentId : null, + experiment.data.assignedCondition?.experimentId ?? null, experiment.uniquifier ? experiment.uniquifier : null, experiment.clientError ? experiment.clientError : null ); From 6b9ae8f3e278f54087ee718a5b31ef1a28c35ce2 Mon Sep 17 00:00:00 2001 From: danoswaltCL <97542869+danoswaltCL@users.noreply.github.com> Date: Thu, 14 Mar 2024 13:24:15 -0400 Subject: [PATCH 2/3] make assignedCondition an optional value in MarkData object, as we can safely as assume null is the intended condition --- .../src/api/controllers/validators/MarkExperimentValidator.v5.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/backend/packages/Upgrade/src/api/controllers/validators/MarkExperimentValidator.v5.ts b/backend/packages/Upgrade/src/api/controllers/validators/MarkExperimentValidator.v5.ts index 60a7e9ef9d..b2da590893 100644 --- a/backend/packages/Upgrade/src/api/controllers/validators/MarkExperimentValidator.v5.ts +++ b/backend/packages/Upgrade/src/api/controllers/validators/MarkExperimentValidator.v5.ts @@ -25,6 +25,7 @@ class Data { @IsString() target: string; + @IsOptional() @ValidateNested() @Type(() => AssignedCondition) assignedCondition: AssignedCondition; From 033a74363cfa19d065a5f539eb8c529d1b05d3fe Mon Sep 17 00:00:00 2001 From: danoswaltCL <97542869+danoswaltCL@users.noreply.github.com> Date: Thu, 14 Mar 2024 13:37:24 -0400 Subject: [PATCH 3/3] version bump --- backend/package-lock.json | 4 ++-- backend/package.json | 2 +- backend/packages/Scheduler/package-lock.json | 4 ++-- backend/packages/Scheduler/package.json | 2 +- backend/packages/Upgrade/package-lock.json | 4 ++-- backend/packages/Upgrade/package.json | 2 +- .../java/src/main/java/org/upgradeplatform/client/Main.java | 6 ++++-- clientlibs/js/package-lock.json | 4 ++-- clientlibs/js/package.json | 2 +- frontend/package-lock.json | 4 ++-- frontend/package.json | 2 +- package-lock.json | 4 ++-- package.json | 2 +- types/package-lock.json | 4 ++-- types/package.json | 2 +- 15 files changed, 25 insertions(+), 23 deletions(-) diff --git a/backend/package-lock.json b/backend/package-lock.json index 047854a44a..0f144d5eb1 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -1,12 +1,12 @@ { "name": "ab_testing_backend", - "version": "5.1.1", + "version": "5.1.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "ab_testing_backend", - "version": "5.1.1", + "version": "5.1.2", "license": "ISC", "dependencies": { "dayjs": "^1.11.10", diff --git a/backend/package.json b/backend/package.json index 28db2ccd53..cc5f8e656b 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,6 +1,6 @@ { "name": "ab_testing_backend", - "version": "5.1.1", + "version": "5.1.2", "description": "Backend for A/B Testing Project", "scripts": { "install:all": "npm ci && cd packages/Scheduler && npm ci && cd ../Upgrade && npm ci", diff --git a/backend/packages/Scheduler/package-lock.json b/backend/packages/Scheduler/package-lock.json index 5717c356fa..e5ae00c25f 100644 --- a/backend/packages/Scheduler/package-lock.json +++ b/backend/packages/Scheduler/package-lock.json @@ -1,12 +1,12 @@ { "name": "ppl-upgrade-serverless", - "version": "5.1.1", + "version": "5.1.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "ppl-upgrade-serverless", - "version": "5.1.1", + "version": "5.1.2", "license": "MIT", "dependencies": { "jsonwebtoken": "^9.0.0", diff --git a/backend/packages/Scheduler/package.json b/backend/packages/Scheduler/package.json index a7aa87457f..5a2fac8b42 100644 --- a/backend/packages/Scheduler/package.json +++ b/backend/packages/Scheduler/package.json @@ -1,6 +1,6 @@ { "name": "ppl-upgrade-serverless", - "version": "5.1.1", + "version": "5.1.2", "description": "Serverless webpack example using Typescript", "main": "handler.js", "scripts": { diff --git a/backend/packages/Upgrade/package-lock.json b/backend/packages/Upgrade/package-lock.json index 164b4ce6d1..6735eb0306 100644 --- a/backend/packages/Upgrade/package-lock.json +++ b/backend/packages/Upgrade/package-lock.json @@ -1,12 +1,12 @@ { "name": "ab_testing_backend", - "version": "5.1.1", + "version": "5.1.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "ab_testing_backend", - "version": "5.1.1", + "version": "5.1.2", "license": "ISC", "dependencies": { "@aws-sdk/client-s3": "^3.485.0", diff --git a/backend/packages/Upgrade/package.json b/backend/packages/Upgrade/package.json index e49266a3a3..168084a30e 100644 --- a/backend/packages/Upgrade/package.json +++ b/backend/packages/Upgrade/package.json @@ -1,6 +1,6 @@ { "name": "ab_testing_backend", - "version": "5.1.1", + "version": "5.1.2", "description": "Backend for A/B Testing Project", "main": "index.js", "scripts": { diff --git a/clientlibs/java/src/main/java/org/upgradeplatform/client/Main.java b/clientlibs/java/src/main/java/org/upgradeplatform/client/Main.java index 4dd6e40a94..61dc6153f7 100644 --- a/clientlibs/java/src/main/java/org/upgradeplatform/client/Main.java +++ b/clientlibs/java/src/main/java/org/upgradeplatform/client/Main.java @@ -12,6 +12,7 @@ import org.eclipse.jdt.annotation.NonNull; import org.upgradeplatform.interfaces.ResponseCallback; +import org.upgradeplatform.requestbeans.MarkExperimentRequestData; import org.upgradeplatform.responsebeans.Assignment; import org.upgradeplatform.responsebeans.Condition; import org.upgradeplatform.responsebeans.ErrorResponse; @@ -24,7 +25,7 @@ public class Main { public static void main(String[] args) throws InterruptedException, ExecutionException { - final String baseUrl = "https://upgradeapi.qa-cli.net"; + final String baseUrl = "http://localhost:3030"; final String userId = UUID.randomUUID().toString(); final String site = "SelectSection"; @@ -72,7 +73,8 @@ public void onSuccess(@NonNull Assignment expResult){ String code = condition == null ? null : condition.getConditionCode(); System.out.println(condition); System.out.println(code); - expResult.markDecisionPoint(MarkedDecisionPointStatus.CONDITION_APPLIED, new Date().toString(), new ResponseCallback(){ + MarkExperimentRequestData markData = new MarkExperimentRequestData(site, target); + experimentClient.markDecisionPoint(MarkedDecisionPointStatus.CONDITION_APPLIED, markData, "", new Date().toString(), new ResponseCallback(){ @Override public void onSuccess(@NonNull MarkDecisionPoint markResult){ result.complete("marked " + code + ": " + markResult.toString()); diff --git a/clientlibs/js/package-lock.json b/clientlibs/js/package-lock.json index 7af7409992..c15ce10db1 100644 --- a/clientlibs/js/package-lock.json +++ b/clientlibs/js/package-lock.json @@ -1,12 +1,12 @@ { "name": "upgrade_client_lib", - "version": "5.1.1", + "version": "5.1.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "upgrade_client_lib", - "version": "5.1.1", + "version": "5.1.2", "license": "ISC", "dependencies": { "axios": "^1.4.0", diff --git a/clientlibs/js/package.json b/clientlibs/js/package.json index 3cd0d677c4..70fcfb8c56 100644 --- a/clientlibs/js/package.json +++ b/clientlibs/js/package.json @@ -1,6 +1,6 @@ { "name": "upgrade_client_lib", - "version": "5.1.1", + "version": "5.1.2", "description": "Client library to communicate with the Upgrade server", "files": [ "dist/*" diff --git a/frontend/package-lock.json b/frontend/package-lock.json index ca7fd7e1a7..ed05f47a79 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -1,12 +1,12 @@ { "name": "ab-testing", - "version": "5.1.1", + "version": "5.1.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "ab-testing", - "version": "5.1.1", + "version": "5.1.2", "license": "MIT", "dependencies": { "@angular/animations": "^17.1.2", diff --git a/frontend/package.json b/frontend/package.json index 27a2fcbaba..fbec666e54 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,6 +1,6 @@ { "name": "ab-testing", - "version": "5.1.1", + "version": "5.1.2", "license": "MIT", "scripts": { "ng": "ng", diff --git a/package-lock.json b/package-lock.json index b9e7e861dd..9f26286e3b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "UpGrade", - "version": "5.1.1", + "version": "5.1.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "UpGrade", - "version": "5.1.1", + "version": "5.1.2", "license": "ISC", "devDependencies": { "@angular-eslint/eslint-plugin": "^14.1.2", diff --git a/package.json b/package.json index 6524cfba67..0217d48ccf 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "UpGrade", - "version": "5.1.1", + "version": "5.1.2", "description": "This is a combined repository for UpGrade, an open-source platform to support large-scale A/B testing in educational applications. Learn more at www.upgradeplatform.org", "main": "index.js", "devDependencies": { diff --git a/types/package-lock.json b/types/package-lock.json index ba92e534fd..431ca679e7 100644 --- a/types/package-lock.json +++ b/types/package-lock.json @@ -1,12 +1,12 @@ { "name": "upgrade_types", - "version": "5.1.1", + "version": "5.1.2", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "upgrade_types", - "version": "5.1.1", + "version": "5.1.2", "license": "ISC", "devDependencies": { "eslint": "^8.27.0", diff --git a/types/package.json b/types/package.json index 784fe87e57..61bf263793 100644 --- a/types/package.json +++ b/types/package.json @@ -1,6 +1,6 @@ { "name": "upgrade_types", - "version": "5.1.1", + "version": "5.1.2", "description": "", "main": "src/index.ts", "types": "src/index.ts",