From 22cfe99404a3c84c02c2afdd3b843aa88d4ef660 Mon Sep 17 00:00:00 2001 From: Steven Dalamaras Date: Sun, 30 Nov 2025 13:45:04 +1000 Subject: [PATCH 1/7] chore: add submodules to 10.0.x --- doubtfire-api | 2 +- doubtfire-lti | 2 +- doubtfire-web | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/doubtfire-api b/doubtfire-api index 3b869c4c..7981de85 160000 --- a/doubtfire-api +++ b/doubtfire-api @@ -1 +1 @@ -Subproject commit 3b869c4c506c42a87a47c58a466fadc18f7aeb44 +Subproject commit 7981de85a8c318ce4c96140ff6fc014bb6719cdb diff --git a/doubtfire-lti b/doubtfire-lti index e75853d0..feedca5f 160000 --- a/doubtfire-lti +++ b/doubtfire-lti @@ -1 +1 @@ -Subproject commit e75853d08fdf25fc099bff88824c530955164d81 +Subproject commit feedca5fdc9f6272ff8cdecdd97f6ae35ae6c6e5 diff --git a/doubtfire-web b/doubtfire-web index 6c4931bd..5aef6cfd 160000 --- a/doubtfire-web +++ b/doubtfire-web @@ -1 +1 @@ -Subproject commit 6c4931bd40e94b9a2fbafe3b0b6c9d8670564c74 +Subproject commit 5aef6cfddaf61408e6f3169002f9b8ce00b7dfac From 0bcbd41d24573c64efbfc818fbee2522933cf1e8 Mon Sep 17 00:00:00 2001 From: Steven Dalamaras Date: Sun, 30 Nov 2025 13:51:27 +1000 Subject: [PATCH 2/7] chore: update submodules with new commits --- doubtfire-api | 2 +- doubtfire-web | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doubtfire-api b/doubtfire-api index 7981de85..0e893786 160000 --- a/doubtfire-api +++ b/doubtfire-api @@ -1 +1 @@ -Subproject commit 7981de85a8c318ce4c96140ff6fc014bb6719cdb +Subproject commit 0e8937861630ef367ce56fb5ef0e57c87ab0c94c diff --git a/doubtfire-web b/doubtfire-web index 5aef6cfd..0611be04 160000 --- a/doubtfire-web +++ b/doubtfire-web @@ -1 +1 @@ -Subproject commit 5aef6cfddaf61408e6f3169002f9b8ce00b7dfac +Subproject commit 0611be04e8fe7e75ae07504945a2984839475e3a From d326a6636771eb7b7932a136e80455c91c6b5b21 Mon Sep 17 00:00:00 2001 From: Steven Dalamaras Date: Tue, 17 Mar 2026 19:16:24 +1000 Subject: [PATCH 3/7] chore: full 10.0.x with submodules --- doubtfire-api | 2 +- doubtfire-overseer | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 160000 doubtfire-overseer diff --git a/doubtfire-api b/doubtfire-api index 0750fec3..1e6a8df0 160000 --- a/doubtfire-api +++ b/doubtfire-api @@ -1 +1 @@ -Subproject commit 0750fec301d4eba77fab69a665df5bf5c211887e +Subproject commit 1e6a8df0709d3eb5e7afd45083c77c479be601ce diff --git a/doubtfire-overseer b/doubtfire-overseer new file mode 160000 index 00000000..ca3496c0 --- /dev/null +++ b/doubtfire-overseer @@ -0,0 +1 @@ +Subproject commit ca3496c064894c9f1618ae96dde35ecf11baf718 From ba8079deea61149a521c09a31bb68fdfe6f7f48b Mon Sep 17 00:00:00 2001 From: officialid130-13e13 Date: Sat, 4 Apr 2026 14:17:09 +0530 Subject: [PATCH 4/7] Service agent deploy changes --- development/api.env | 11 +++++++++++ development/docker-compose.yml | 16 ++++++++++++++++ doubtfire-api | 2 +- 3 files changed, 28 insertions(+), 1 deletion(-) diff --git a/development/api.env b/development/api.env index 72c33f9c..72c9551f 100644 --- a/development/api.env +++ b/development/api.env @@ -62,3 +62,14 @@ DF_PRODUCTION_DB_PASSWORD=pwd # Mail settings DF_MAIL_DELIVERY_METHOD=test +# TorchServe inference key +TORCHSERVE_INFERENCE_KEY=dwQSgtJ4 #dE5alekH + +# Set proxy +HTTP_PROXY=http://192.168.65.1:3128 +HTTPS_PROXY=http://192.168.65.1:3128 + +# url add +TORCHSERVE_URL=http://effort-predictor:8080/predictions/effort-predictor + + diff --git a/development/docker-compose.yml b/development/docker-compose.yml index 1e5f98f0..52d73462 100644 --- a/development/docker-compose.yml +++ b/development/docker-compose.yml @@ -29,6 +29,7 @@ services: - ../data/student-work:/student-work depends_on: - dev-db + - effort-predictor # add dependency environment: RAILS_ENV: 'development' @@ -83,6 +84,21 @@ services: # Redis DF_REDIS_SIDEKIQ_URL: redis://df-compose-redis-sidekiq:6379/0 + # TorchServe Inference Key + TORCHSERVE_INFERENCE_KEY: dwQSgtJ4 #dE5alekH + TORCHSERVE_URL: "http://effort-predictor:8080/predictions/effort-predictor" + + effort-predictor: # TorchServe service + image: pytorch/torchserve:latest + ports: + - "8080:8080" + volumes: + # - ./model_store:/home/model-server/model-store + - ../doubtfire-api/ml_services/model_store:/home/model-server/model-store + - ../doubtfire-api/ml_services/key_file.json:/home/model-server/key_file.json + #command: ["torchserve", "--start", "--model-store", "model_store", "--models", "effort-predictor=effort-predictor.mar"] + command: ["torchserve", "--start", "--model-store", "/home/model-server/model-store", "--models", "effort-predictor=effort-predictor.mar"] + doubtfire-web: container_name: doubtfire-web image: lmsdoubtfire/doubtfire-web:8.0.x-dev diff --git a/doubtfire-api b/doubtfire-api index 0750fec3..0e5153b4 160000 --- a/doubtfire-api +++ b/doubtfire-api @@ -1 +1 @@ -Subproject commit 0750fec301d4eba77fab69a665df5bf5c211887e +Subproject commit 0e5153b4aa4e73a514f9cc0f73efa56a006b632a From f7f1e46ceea0aa2732455238391a054406d9e96a Mon Sep 17 00:00:00 2001 From: Steven Dalamaras Date: Sat, 25 Apr 2026 20:43:52 +1000 Subject: [PATCH 5/7] feat(ai_eff): rename weighting to estimated_hours --- doubtfire-api | 2 +- doubtfire-web | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doubtfire-api b/doubtfire-api index 8bace6b2..308b11f6 160000 --- a/doubtfire-api +++ b/doubtfire-api @@ -1 +1 @@ -Subproject commit 8bace6b2794ae3b694cda9c29e280e13938b6a13 +Subproject commit 308b11f6fe022a1cf62813d6be6c0c208eff41fa diff --git a/doubtfire-web b/doubtfire-web index 8fe61718..70695276 160000 --- a/doubtfire-web +++ b/doubtfire-web @@ -1 +1 @@ -Subproject commit 8fe61718c0e263fa965b861763337af27c175b36 +Subproject commit 70695276b625fd91f0aab284a9f51f207f2862de From dfbeffcb3967a8f2b261334c8c966d47d7e6697a Mon Sep 17 00:00:00 2001 From: Steven Dalamaras Date: Sun, 26 Apr 2026 22:34:21 +1000 Subject: [PATCH 6/7] feat(ai_eff): working full stack PoC for fastapi predict model --- .devcontainer/devcontainer.env | 2 ++ .devcontainer/docker-compose.yml | 13 +++++++++++++ .gitmodules | 3 +++ doubtfire-api | 2 +- doubtfire-effort-predict | 1 + doubtfire-web | 2 +- 6 files changed, 21 insertions(+), 2 deletions(-) create mode 160000 doubtfire-effort-predict diff --git a/.devcontainer/devcontainer.env b/.devcontainer/devcontainer.env index 6118912b..b77eae62 100644 --- a/.devcontainer/devcontainer.env +++ b/.devcontainer/devcontainer.env @@ -87,3 +87,5 @@ DF_MAX_FILE_SIZE=10_000_000 # These will show up in doubtfire-api/tmp/mail DF_EMAIL_ERRORS_TO=errors@ontrack-test.com + +ML_SERVICE_URL = http://effort-predictor:8080/ diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml index 147f864e..3a8f2fb2 100644 --- a/.devcontainer/docker-compose.yml +++ b/.devcontainer/docker-compose.yml @@ -47,6 +47,7 @@ services: LATEX_BUILD_PATH: /texlive/shell/latex_build.sh depends_on: - dev-db + - effort-predictor dev-db: container_name: doubtfire-dev-db @@ -107,6 +108,18 @@ services: - ./devcontainer.env network_mode: none + effort-predictor: + build: + context: ../doubtfire-effort-predict/ + dockerfile: Dockerfile + ports: + - "8080:8080" +# volumes: +# - ../doubtfire-api/ml_services/model_store:/home/model-server/model-store +# - ../doubtfire-api/ml_services/key_file.json:/home/model-server/key_file.json + networks: + - backnet + volumes: ws_node_modules: web_node_modules: diff --git a/.gitmodules b/.gitmodules index a908009b..480a1268 100644 --- a/.gitmodules +++ b/.gitmodules @@ -10,3 +10,6 @@ [submodule "doubtfire-lti"] path = doubtfire-lti url = https://github.com/doubtfire-lms/doubtfire-lti.git +[submodule "doubtfire-effort-predict"] + path = doubtfire-effort-predict + url = https://github.com/SteveDala/doubtfire-effort-predict.git diff --git a/doubtfire-api b/doubtfire-api index 308b11f6..a1f5dbbf 160000 --- a/doubtfire-api +++ b/doubtfire-api @@ -1 +1 @@ -Subproject commit 308b11f6fe022a1cf62813d6be6c0c208eff41fa +Subproject commit a1f5dbbf276ef6df0f110075eef6fcb184d494b8 diff --git a/doubtfire-effort-predict b/doubtfire-effort-predict new file mode 160000 index 00000000..e5c1fc92 --- /dev/null +++ b/doubtfire-effort-predict @@ -0,0 +1 @@ +Subproject commit e5c1fc92d241178e98051760ba714a1709c3e65f diff --git a/doubtfire-web b/doubtfire-web index 70695276..3032ef25 160000 --- a/doubtfire-web +++ b/doubtfire-web @@ -1 +1 @@ -Subproject commit 70695276b625fd91f0aab284a9f51f207f2862de +Subproject commit 3032ef257045ea311471e3a911dad51a62d2477c From fd69ff04592d7e0fd3534fdd179cef0fa0e60169 Mon Sep 17 00:00:00 2001 From: Steven Dalamaras Date: Thu, 30 Apr 2026 20:08:21 +1000 Subject: [PATCH 7/7] feat(ai_eff): remove unrequired references --- .devcontainer/docker-compose.yml | 3 --- development/api.env | 12 ------------ development/docker-compose.yml | 16 ---------------- 3 files changed, 31 deletions(-) diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml index 3a8f2fb2..d1482446 100644 --- a/.devcontainer/docker-compose.yml +++ b/.devcontainer/docker-compose.yml @@ -114,9 +114,6 @@ services: dockerfile: Dockerfile ports: - "8080:8080" -# volumes: -# - ../doubtfire-api/ml_services/model_store:/home/model-server/model-store -# - ../doubtfire-api/ml_services/key_file.json:/home/model-server/key_file.json networks: - backnet diff --git a/development/api.env b/development/api.env index 72c9551f..72026837 100644 --- a/development/api.env +++ b/development/api.env @@ -61,15 +61,3 @@ DF_PRODUCTION_DB_PASSWORD=pwd # Mail settings DF_MAIL_DELIVERY_METHOD=test - -# TorchServe inference key -TORCHSERVE_INFERENCE_KEY=dwQSgtJ4 #dE5alekH - -# Set proxy -HTTP_PROXY=http://192.168.65.1:3128 -HTTPS_PROXY=http://192.168.65.1:3128 - -# url add -TORCHSERVE_URL=http://effort-predictor:8080/predictions/effort-predictor - - diff --git a/development/docker-compose.yml b/development/docker-compose.yml index 52d73462..1e5f98f0 100644 --- a/development/docker-compose.yml +++ b/development/docker-compose.yml @@ -29,7 +29,6 @@ services: - ../data/student-work:/student-work depends_on: - dev-db - - effort-predictor # add dependency environment: RAILS_ENV: 'development' @@ -84,21 +83,6 @@ services: # Redis DF_REDIS_SIDEKIQ_URL: redis://df-compose-redis-sidekiq:6379/0 - # TorchServe Inference Key - TORCHSERVE_INFERENCE_KEY: dwQSgtJ4 #dE5alekH - TORCHSERVE_URL: "http://effort-predictor:8080/predictions/effort-predictor" - - effort-predictor: # TorchServe service - image: pytorch/torchserve:latest - ports: - - "8080:8080" - volumes: - # - ./model_store:/home/model-server/model-store - - ../doubtfire-api/ml_services/model_store:/home/model-server/model-store - - ../doubtfire-api/ml_services/key_file.json:/home/model-server/key_file.json - #command: ["torchserve", "--start", "--model-store", "model_store", "--models", "effort-predictor=effort-predictor.mar"] - command: ["torchserve", "--start", "--model-store", "/home/model-server/model-store", "--models", "effort-predictor=effort-predictor.mar"] - doubtfire-web: container_name: doubtfire-web image: lmsdoubtfire/doubtfire-web:8.0.x-dev