From e525eb7cd0807245236e9c4a47af4d8a21b47dfa Mon Sep 17 00:00:00 2001 From: dOrgJelli Date: Thu, 25 Jan 2024 12:39:52 +0100 Subject: [PATCH 1/4] chore: consistent folder structure (api, db, lib, workflow) --- workers/fund_public_goods/db/__init__.py | 1 + .../db/{operations.py => tables/gitcoin.py} | 5 ++--- workers/fund_public_goods/{ => lib}/gitcoin/models.py | 0 workers/fund_public_goods/{ => lib}/gitcoin/scrapers.py | 0 .../fund_public_goods/{agents => lib/strategy}/__init__.py | 0 .../researcher => lib/strategy/functions}/__init__.py | 0 .../researcher => lib/strategy}/functions/assign_weights.py | 0 .../strategy}/functions/evaluate_projects.py | 0 .../strategy}/functions/generate_queries.py | 0 .../{agents/researcher => lib/strategy}/models/answer.py | 0 .../researcher => lib/strategy}/models/evaluated_project.py | 0 .../{agents/researcher => lib/strategy}/models/project.py | 0 .../researcher => lib/strategy}/models/project_evaluation.py | 0 .../researcher => lib/strategy}/models/weighted_project.py | 0 .../functions => workflows/create_strategy}/__init__.py | 0 .../create_strategy}/events/__init__.py | 0 .../create_strategy}/events/create_strategy_event.py | 2 +- .../create_strategy}/functions/__init__.py | 0 .../create_strategy}/functions/create_strategy.py | 2 +- .../{workers => workflows/index_gitcoin}/__init__.py | 0 .../{gitcoin => workflows/index_gitcoin}/events/__init__.py | 0 .../index_gitcoin}/events/index_gitcoin_page_event.py | 0 .../index_gitcoin}/functions/__init__.py | 0 .../index_gitcoin}/functions/index_gitcoin_page.py | 0 .../index_gitcoin}/functions/start_index_gitcoin.py | 0 workers/pyproject.toml | 2 +- 26 files changed, 6 insertions(+), 6 deletions(-) rename workers/fund_public_goods/db/{operations.py => tables/gitcoin.py} (97%) rename workers/fund_public_goods/{ => lib}/gitcoin/models.py (100%) rename workers/fund_public_goods/{ => lib}/gitcoin/scrapers.py (100%) rename workers/fund_public_goods/{agents => lib/strategy}/__init__.py (100%) rename workers/fund_public_goods/{agents/researcher => lib/strategy/functions}/__init__.py (100%) rename workers/fund_public_goods/{agents/researcher => lib/strategy}/functions/assign_weights.py (100%) rename workers/fund_public_goods/{agents/researcher => lib/strategy}/functions/evaluate_projects.py (100%) rename workers/fund_public_goods/{agents/researcher => lib/strategy}/functions/generate_queries.py (100%) rename workers/fund_public_goods/{agents/researcher => lib/strategy}/models/answer.py (100%) rename workers/fund_public_goods/{agents/researcher => lib/strategy}/models/evaluated_project.py (100%) rename workers/fund_public_goods/{agents/researcher => lib/strategy}/models/project.py (100%) rename workers/fund_public_goods/{agents/researcher => lib/strategy}/models/project_evaluation.py (100%) rename workers/fund_public_goods/{agents/researcher => lib/strategy}/models/weighted_project.py (100%) rename workers/fund_public_goods/{agents/researcher/functions => workflows/create_strategy}/__init__.py (100%) rename workers/fund_public_goods/{workers => workflows/create_strategy}/events/__init__.py (100%) rename workers/fund_public_goods/{workers => workflows/create_strategy}/events/create_strategy_event.py (90%) rename workers/fund_public_goods/{workers => workflows/create_strategy}/functions/__init__.py (100%) rename workers/fund_public_goods/{workers => workflows/create_strategy}/functions/create_strategy.py (99%) rename workers/fund_public_goods/{workers => workflows/index_gitcoin}/__init__.py (100%) rename workers/fund_public_goods/{gitcoin => workflows/index_gitcoin}/events/__init__.py (100%) rename workers/fund_public_goods/{gitcoin => workflows/index_gitcoin}/events/index_gitcoin_page_event.py (100%) rename workers/fund_public_goods/{gitcoin => workflows/index_gitcoin}/functions/__init__.py (100%) rename workers/fund_public_goods/{gitcoin => workflows/index_gitcoin}/functions/index_gitcoin_page.py (100%) rename workers/fund_public_goods/{gitcoin => workflows/index_gitcoin}/functions/start_index_gitcoin.py (100%) diff --git a/workers/fund_public_goods/db/__init__.py b/workers/fund_public_goods/db/__init__.py index fda7063..4646060 100644 --- a/workers/fund_public_goods/db/__init__.py +++ b/workers/fund_public_goods/db/__init__.py @@ -1,3 +1,4 @@ +from .tables import gitcoin from .tables import logs from .tables import projects from .tables import runs diff --git a/workers/fund_public_goods/db/operations.py b/workers/fund_public_goods/db/tables/gitcoin.py similarity index 97% rename from workers/fund_public_goods/db/operations.py rename to workers/fund_public_goods/db/tables/gitcoin.py index b56e975..92d54f7 100644 --- a/workers/fund_public_goods/db/operations.py +++ b/workers/fund_public_goods/db/tables/gitcoin.py @@ -1,7 +1,7 @@ import datetime import json from fund_public_goods.gitcoin.models import GitcoinIndexingJob, ProjectApplicationInfo, ProjectInfo -from .client import create_admin +from fund_public_goods.db.client import create_admin def upsert_project(app: ProjectInfo): db = create_admin() @@ -19,7 +19,6 @@ def upsert_project(app: ProjectInfo): "description": app.data["description"], "website": app.data["website"], }).execute() - def save_application(app: ProjectApplicationInfo): db = create_admin() @@ -119,4 +118,4 @@ def stop_and_mark_job_as_failed(job_id: str, error: object): "last_updated_at": datetime.datetime.utcnow().isoformat() }) .eq("id", job_id) - .execute()) \ No newline at end of file + .execute()) diff --git a/workers/fund_public_goods/gitcoin/models.py b/workers/fund_public_goods/lib/gitcoin/models.py similarity index 100% rename from workers/fund_public_goods/gitcoin/models.py rename to workers/fund_public_goods/lib/gitcoin/models.py diff --git a/workers/fund_public_goods/gitcoin/scrapers.py b/workers/fund_public_goods/lib/gitcoin/scrapers.py similarity index 100% rename from workers/fund_public_goods/gitcoin/scrapers.py rename to workers/fund_public_goods/lib/gitcoin/scrapers.py diff --git a/workers/fund_public_goods/agents/__init__.py b/workers/fund_public_goods/lib/strategy/__init__.py similarity index 100% rename from workers/fund_public_goods/agents/__init__.py rename to workers/fund_public_goods/lib/strategy/__init__.py diff --git a/workers/fund_public_goods/agents/researcher/__init__.py b/workers/fund_public_goods/lib/strategy/functions/__init__.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/__init__.py rename to workers/fund_public_goods/lib/strategy/functions/__init__.py diff --git a/workers/fund_public_goods/agents/researcher/functions/assign_weights.py b/workers/fund_public_goods/lib/strategy/functions/assign_weights.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/functions/assign_weights.py rename to workers/fund_public_goods/lib/strategy/functions/assign_weights.py diff --git a/workers/fund_public_goods/agents/researcher/functions/evaluate_projects.py b/workers/fund_public_goods/lib/strategy/functions/evaluate_projects.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/functions/evaluate_projects.py rename to workers/fund_public_goods/lib/strategy/functions/evaluate_projects.py diff --git a/workers/fund_public_goods/agents/researcher/functions/generate_queries.py b/workers/fund_public_goods/lib/strategy/functions/generate_queries.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/functions/generate_queries.py rename to workers/fund_public_goods/lib/strategy/functions/generate_queries.py diff --git a/workers/fund_public_goods/agents/researcher/models/answer.py b/workers/fund_public_goods/lib/strategy/models/answer.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/models/answer.py rename to workers/fund_public_goods/lib/strategy/models/answer.py diff --git a/workers/fund_public_goods/agents/researcher/models/evaluated_project.py b/workers/fund_public_goods/lib/strategy/models/evaluated_project.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/models/evaluated_project.py rename to workers/fund_public_goods/lib/strategy/models/evaluated_project.py diff --git a/workers/fund_public_goods/agents/researcher/models/project.py b/workers/fund_public_goods/lib/strategy/models/project.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/models/project.py rename to workers/fund_public_goods/lib/strategy/models/project.py diff --git a/workers/fund_public_goods/agents/researcher/models/project_evaluation.py b/workers/fund_public_goods/lib/strategy/models/project_evaluation.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/models/project_evaluation.py rename to workers/fund_public_goods/lib/strategy/models/project_evaluation.py diff --git a/workers/fund_public_goods/agents/researcher/models/weighted_project.py b/workers/fund_public_goods/lib/strategy/models/weighted_project.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/models/weighted_project.py rename to workers/fund_public_goods/lib/strategy/models/weighted_project.py diff --git a/workers/fund_public_goods/agents/researcher/functions/__init__.py b/workers/fund_public_goods/workflows/create_strategy/__init__.py similarity index 100% rename from workers/fund_public_goods/agents/researcher/functions/__init__.py rename to workers/fund_public_goods/workflows/create_strategy/__init__.py diff --git a/workers/fund_public_goods/workers/events/__init__.py b/workers/fund_public_goods/workflows/create_strategy/events/__init__.py similarity index 100% rename from workers/fund_public_goods/workers/events/__init__.py rename to workers/fund_public_goods/workflows/create_strategy/events/__init__.py diff --git a/workers/fund_public_goods/workers/events/create_strategy_event.py b/workers/fund_public_goods/workflows/create_strategy/events/create_strategy_event.py similarity index 90% rename from workers/fund_public_goods/workers/events/create_strategy_event.py rename to workers/fund_public_goods/workflows/create_strategy/events/create_strategy_event.py index 7bd9758..b76ef6a 100644 --- a/workers/fund_public_goods/workers/events/create_strategy_event.py +++ b/workers/fund_public_goods/workflows/create_strategy/events/create_strategy_event.py @@ -2,7 +2,7 @@ from pydantic import BaseModel class CreateStrategyEvent: - name: str = "create_strategy" + name: str = "on_create_strategy" trigger = inngest.TriggerEvent(event=name) class Data(BaseModel): diff --git a/workers/fund_public_goods/workers/functions/__init__.py b/workers/fund_public_goods/workflows/create_strategy/functions/__init__.py similarity index 100% rename from workers/fund_public_goods/workers/functions/__init__.py rename to workers/fund_public_goods/workflows/create_strategy/functions/__init__.py diff --git a/workers/fund_public_goods/workers/functions/create_strategy.py b/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py similarity index 99% rename from workers/fund_public_goods/workers/functions/create_strategy.py rename to workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py index 944cc60..f95cb9a 100644 --- a/workers/fund_public_goods/workers/functions/create_strategy.py +++ b/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py @@ -45,7 +45,7 @@ def fetch_projects_data(supabase: Client) -> list[Project]: @inngest.create_function( - fn_id="on_create_strategy", + fn_id="create_strategy", trigger=CreateStrategyEvent.trigger, ) async def create_strategy( diff --git a/workers/fund_public_goods/workers/__init__.py b/workers/fund_public_goods/workflows/index_gitcoin/__init__.py similarity index 100% rename from workers/fund_public_goods/workers/__init__.py rename to workers/fund_public_goods/workflows/index_gitcoin/__init__.py diff --git a/workers/fund_public_goods/gitcoin/events/__init__.py b/workers/fund_public_goods/workflows/index_gitcoin/events/__init__.py similarity index 100% rename from workers/fund_public_goods/gitcoin/events/__init__.py rename to workers/fund_public_goods/workflows/index_gitcoin/events/__init__.py diff --git a/workers/fund_public_goods/gitcoin/events/index_gitcoin_page_event.py b/workers/fund_public_goods/workflows/index_gitcoin/events/index_gitcoin_page_event.py similarity index 100% rename from workers/fund_public_goods/gitcoin/events/index_gitcoin_page_event.py rename to workers/fund_public_goods/workflows/index_gitcoin/events/index_gitcoin_page_event.py diff --git a/workers/fund_public_goods/gitcoin/functions/__init__.py b/workers/fund_public_goods/workflows/index_gitcoin/functions/__init__.py similarity index 100% rename from workers/fund_public_goods/gitcoin/functions/__init__.py rename to workers/fund_public_goods/workflows/index_gitcoin/functions/__init__.py diff --git a/workers/fund_public_goods/gitcoin/functions/index_gitcoin_page.py b/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py similarity index 100% rename from workers/fund_public_goods/gitcoin/functions/index_gitcoin_page.py rename to workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py diff --git a/workers/fund_public_goods/gitcoin/functions/start_index_gitcoin.py b/workers/fund_public_goods/workflows/index_gitcoin/functions/start_index_gitcoin.py similarity index 100% rename from workers/fund_public_goods/gitcoin/functions/start_index_gitcoin.py rename to workers/fund_public_goods/workflows/index_gitcoin/functions/start_index_gitcoin.py diff --git a/workers/pyproject.toml b/workers/pyproject.toml index 6ba3adb..4c72e29 100644 --- a/workers/pyproject.toml +++ b/workers/pyproject.toml @@ -25,7 +25,7 @@ types-requests = "^2.31.0.20240106" [tool.mypy] check_untyped_defs = true -ignore_missing_imports = true +ignore_missing_imports = false plugins = [ "pydantic.mypy" ] From d7c18427baa62bac120e160a8a2e83ae82e6fb7d Mon Sep 17 00:00:00 2001 From: dOrgJelli Date: Thu, 25 Jan 2024 12:45:54 +0100 Subject: [PATCH 2/4] chore: update imports --- workers/fund_public_goods/api/runs.py | 2 +- workers/fund_public_goods/api/workers.py | 6 +++--- workers/fund_public_goods/db/tables/gitcoin.py | 2 +- .../db/tables/strategy_entries.py | 2 +- .../fund_public_goods/lib/gitcoin/scrapers.py | 2 +- .../lib/strategy/functions/assign_weights.py | 5 ++--- .../lib/strategy/functions/evaluate_projects.py | 8 ++++---- .../lib/strategy/models/evaluated_project.py | 4 ++-- .../lib/strategy/models/project.py | 2 +- .../lib/strategy/models/weighted_project.py | 4 ++-- workers/fund_public_goods/main.py | 10 +++++----- .../create_strategy/functions/create_strategy.py | 16 ++++++++-------- .../functions/index_gitcoin_page.py | 8 ++++---- .../functions/start_index_gitcoin.py | 6 +++--- 14 files changed, 38 insertions(+), 39 deletions(-) diff --git a/workers/fund_public_goods/api/runs.py b/workers/fund_public_goods/api/runs.py index 88a7b3a..22800a4 100644 --- a/workers/fund_public_goods/api/runs.py +++ b/workers/fund_public_goods/api/runs.py @@ -1,5 +1,5 @@ from fund_public_goods.inngest_client import inngest_client -from fund_public_goods.workers.events import CreateStrategyEvent +from fund_public_goods.workflows.create_strategy.events import CreateStrategyEvent from fund_public_goods.db import client, tables from fastapi import APIRouter, HTTPException from pydantic import BaseModel diff --git a/workers/fund_public_goods/api/workers.py b/workers/fund_public_goods/api/workers.py index 53eaccb..6009acf 100644 --- a/workers/fund_public_goods/api/workers.py +++ b/workers/fund_public_goods/api/workers.py @@ -1,8 +1,8 @@ -from fund_public_goods.inngest_client import inngest_client -from fund_public_goods.workers.events import CreateStrategyEvent -from fund_public_goods.db import client, tables from fastapi import APIRouter, HTTPException from pydantic import BaseModel +from fund_public_goods.inngest_client import inngest_client +from fund_public_goods.workflows.create_strategy.events import CreateStrategyEvent +from fund_public_goods.db import client, tables router = APIRouter() diff --git a/workers/fund_public_goods/db/tables/gitcoin.py b/workers/fund_public_goods/db/tables/gitcoin.py index 92d54f7..b02778a 100644 --- a/workers/fund_public_goods/db/tables/gitcoin.py +++ b/workers/fund_public_goods/db/tables/gitcoin.py @@ -1,6 +1,6 @@ import datetime import json -from fund_public_goods.gitcoin.models import GitcoinIndexingJob, ProjectApplicationInfo, ProjectInfo +from fund_public_goods.lib.gitcoin.models import GitcoinIndexingJob, ProjectApplicationInfo, ProjectInfo from fund_public_goods.db.client import create_admin def upsert_project(app: ProjectInfo): diff --git a/workers/fund_public_goods/db/tables/strategy_entries.py b/workers/fund_public_goods/db/tables/strategy_entries.py index 536b762..77dc4d6 100644 --- a/workers/fund_public_goods/db/tables/strategy_entries.py +++ b/workers/fund_public_goods/db/tables/strategy_entries.py @@ -1,5 +1,5 @@ from supabase import Client -from fund_public_goods.agents.researcher.models.weighted_project import WeightedProject +from fund_public_goods.lib.strategy.models.weighted_project import WeightedProject def insert( diff --git a/workers/fund_public_goods/lib/gitcoin/scrapers.py b/workers/fund_public_goods/lib/gitcoin/scrapers.py index a9ed3b2..c026282 100644 --- a/workers/fund_public_goods/lib/gitcoin/scrapers.py +++ b/workers/fund_public_goods/lib/gitcoin/scrapers.py @@ -1,6 +1,6 @@ import requests -from fund_public_goods.gitcoin.models import RoundInfo, ApplicationInfo +from fund_public_goods.lib.gitcoin.models import RoundInfo, ApplicationInfo def fetch_json_from_ipfs(pointer: str) -> dict: ipfs_url = f"https://ipfs.io/ipfs/{pointer}" diff --git a/workers/fund_public_goods/lib/strategy/functions/assign_weights.py b/workers/fund_public_goods/lib/strategy/functions/assign_weights.py index 2f9bb64..2ea5a1f 100644 --- a/workers/fund_public_goods/lib/strategy/functions/assign_weights.py +++ b/workers/fund_public_goods/lib/strategy/functions/assign_weights.py @@ -2,10 +2,9 @@ from langchain_core.prompts import ChatPromptTemplate from langchain_core.output_parsers import StrOutputParser from langchain_core.output_parsers.json import JsonOutputParser -from fund_public_goods.agents.researcher.models.evaluated_project import EvaluatedProject import json - -from fund_public_goods.agents.researcher.models.weighted_project import WeightedProject +from fund_public_goods.lib.strategy.models.evaluated_project import EvaluatedProject +from fund_public_goods.lib.strategy.models.weighted_project import WeightedProject assign_weights_prompt_template = """ You are a specialist in public goods funding. You will receive a list of projects diff --git a/workers/fund_public_goods/lib/strategy/functions/evaluate_projects.py b/workers/fund_public_goods/lib/strategy/functions/evaluate_projects.py index 2f120d1..a216585 100644 --- a/workers/fund_public_goods/lib/strategy/functions/evaluate_projects.py +++ b/workers/fund_public_goods/lib/strategy/functions/evaluate_projects.py @@ -4,11 +4,11 @@ from langchain_core.output_parsers import StrOutputParser from langchain_core.output_parsers.json import JsonOutputParser from langchain_openai import OpenAIEmbeddings -from fund_public_goods.agents.researcher.functions.generate_queries import generate_queries -from fund_public_goods.agents.researcher.models.evaluated_project import EvaluatedProject -from fund_public_goods.agents.researcher.models.project import Project from langchain.vectorstores.chroma import Chroma -from fund_public_goods.agents.researcher.models.project_evaluation import ProjectEvaluation +from fund_public_goods.lib.strategy.functions.generate_queries import generate_queries +from fund_public_goods.lib.strategy.models.evaluated_project import EvaluatedProject +from fund_public_goods.lib.strategy.models.project import Project +from fund_public_goods.lib.strategy.models.project_evaluation import ProjectEvaluation def stringify_projects(projects: list[Project], separator: str) -> str: diff --git a/workers/fund_public_goods/lib/strategy/models/evaluated_project.py b/workers/fund_public_goods/lib/strategy/models/evaluated_project.py index 5821f28..6872d9b 100644 --- a/workers/fund_public_goods/lib/strategy/models/evaluated_project.py +++ b/workers/fund_public_goods/lib/strategy/models/evaluated_project.py @@ -1,6 +1,6 @@ from pydantic import BaseModel -from fund_public_goods.agents.researcher.models.project import Project -from fund_public_goods.agents.researcher.models.project_evaluation import ProjectEvaluation +from fund_public_goods.lib.strategy.models.project import Project +from fund_public_goods.lib.strategy.models.project_evaluation import ProjectEvaluation class EvaluatedProject(BaseModel): project: Project diff --git a/workers/fund_public_goods/lib/strategy/models/project.py b/workers/fund_public_goods/lib/strategy/models/project.py index a3e1296..3793880 100644 --- a/workers/fund_public_goods/lib/strategy/models/project.py +++ b/workers/fund_public_goods/lib/strategy/models/project.py @@ -1,5 +1,5 @@ from pydantic import BaseModel -from fund_public_goods.agents.researcher.models.answer import Answer +from fund_public_goods.lib.strategy.models.answer import Answer class Project(BaseModel): id: str diff --git a/workers/fund_public_goods/lib/strategy/models/weighted_project.py b/workers/fund_public_goods/lib/strategy/models/weighted_project.py index b4e5a62..08cc4c1 100644 --- a/workers/fund_public_goods/lib/strategy/models/weighted_project.py +++ b/workers/fund_public_goods/lib/strategy/models/weighted_project.py @@ -1,6 +1,6 @@ from pydantic import BaseModel -from fund_public_goods.agents.researcher.models.project import Project -from fund_public_goods.agents.researcher.models.project_evaluation import ProjectEvaluation +from fund_public_goods.lib.strategy.models.project import Project +from fund_public_goods.lib.strategy.models.project_evaluation import ProjectEvaluation class WeightedProject(BaseModel): project: Project diff --git a/workers/fund_public_goods/main.py b/workers/fund_public_goods/main.py index 9ab6e2b..6e4765d 100644 --- a/workers/fund_public_goods/main.py +++ b/workers/fund_public_goods/main.py @@ -2,11 +2,11 @@ from fastapi import FastAPI import inngest.fast_api from mangum import Mangum -from .inngest_client import inngest_client -from fund_public_goods.gitcoin.functions import functions as gitcoin_functions -from fund_public_goods.workers.functions import functions as worker_functions -from .api import workers, runs -from .get_version import router as get_version_router +from fund_public_goods.inngest_client import inngest_client +from fund_public_goods.workflows.index_gitcoin.functions import functions as gitcoin_functions +from fund_public_goods.workflows.create_strategy.functions import functions as worker_functions +from fund_public_goods.api import workers, runs +from fund_public_goods.get_version import router as get_version_router load_dotenv() diff --git a/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py b/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py index f95cb9a..5aa6c00 100644 --- a/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py +++ b/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py @@ -1,19 +1,19 @@ -from fund_public_goods.agents.researcher.functions.assign_weights import assign_weights -from fund_public_goods.agents.researcher.functions.evaluate_projects import ( +import inngest +from supabase import Client +from fund_public_goods.lib.strategy.functions.assign_weights import assign_weights +from fund_public_goods.lib.strategy.functions.evaluate_projects import ( evaluate_projects, ) -from fund_public_goods.agents.researcher.models.evaluated_project import ( +from fund_public_goods.lib.strategy.models.evaluated_project import ( EvaluatedProject, ) -from fund_public_goods.agents.researcher.models.project import Project -from fund_public_goods.agents.researcher.models.weighted_project import WeightedProject -import inngest +from fund_public_goods.lib.strategy.models.project import Project +from fund_public_goods.lib.strategy.models.weighted_project import WeightedProject from fund_public_goods.db.tables.projects import get_projects from fund_public_goods.db.tables.runs import get_prompt from fund_public_goods.db.tables.strategy_entries import insert_multiple -from fund_public_goods.workers.events import CreateStrategyEvent from fund_public_goods.db import client, logs -from supabase import Client +from fund_public_goods.workflows.create_strategy.events import CreateStrategyEvent def fetch_projects_data(supabase: Client) -> list[Project]: diff --git a/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py b/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py index 69a6d10..6aabe16 100644 --- a/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py +++ b/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py @@ -2,10 +2,10 @@ from typing import cast import inngest from pydantic import parse_obj_as -from fund_public_goods.gitcoin.models import ApplicationInfo, ProjectApplicationInfo, ProjectInfo, RoundInfo -from fund_public_goods.gitcoin.events import IndexGitcoinPageEvent -from fund_public_goods.gitcoin.scrapers import fetch_json_from_ipfs, fetch_project_applications, fetch_rounds -from fund_public_goods.db.operations import save_application, stop_and_mark_job_as_failed, stop_job, update_job_progress, upsert_project +from fund_public_goods.lib.gitcoin.models import ApplicationInfo, ProjectApplicationInfo, ProjectInfo, RoundInfo +from fund_public_goods.workflows.index_gitcoin.events import IndexGitcoinPageEvent +from fund_public_goods.lib.gitcoin.scrapers import fetch_json_from_ipfs, fetch_project_applications, fetch_rounds +from fund_public_goods.db.tables.gitcoin import save_application, stop_and_mark_job_as_failed, stop_job, update_job_progress, upsert_project PAGE_REQUEST_FREQUENCY_SECONDS = 5 # 10 seconds # PAGE_REQUEST_FREQUENCY_SECONDS = 10 # 10 seconds diff --git a/workers/fund_public_goods/workflows/index_gitcoin/functions/start_index_gitcoin.py b/workers/fund_public_goods/workflows/index_gitcoin/functions/start_index_gitcoin.py index fffffa3..fc375a7 100644 --- a/workers/fund_public_goods/workflows/index_gitcoin/functions/start_index_gitcoin.py +++ b/workers/fund_public_goods/workflows/index_gitcoin/functions/start_index_gitcoin.py @@ -1,7 +1,7 @@ import inngest -from fund_public_goods.gitcoin.events import IndexGitcoinPageEvent -from fund_public_goods.db.operations import get_non_running_job, is_any_job_running, start_job -from fund_public_goods.gitcoin.models import GitcoinIndexingJob +from fund_public_goods.workflows.index_gitcoin.events import IndexGitcoinPageEvent +from fund_public_goods.db.tables.gitcoin import get_non_running_job, is_any_job_running, start_job +from fund_public_goods.lib.gitcoin.models import GitcoinIndexingJob @inngest.create_function( fn_id="start_index_gitcoin", From 42d5436c891d49f7ab31d19a9f92ae0426318f2c Mon Sep 17 00:00:00 2001 From: dOrgJelli Date: Thu, 25 Jan 2024 12:52:29 +0100 Subject: [PATCH 3/4] chore: rename gitcoin/scrapers.py to gitcoin/functions.py --- workers/fund_public_goods/lib/gitcoin/__init__.py | 0 .../fund_public_goods/lib/gitcoin/{scrapers.py => functions.py} | 0 .../workflows/index_gitcoin/functions/index_gitcoin_page.py | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 workers/fund_public_goods/lib/gitcoin/__init__.py rename workers/fund_public_goods/lib/gitcoin/{scrapers.py => functions.py} (100%) diff --git a/workers/fund_public_goods/lib/gitcoin/__init__.py b/workers/fund_public_goods/lib/gitcoin/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/workers/fund_public_goods/lib/gitcoin/scrapers.py b/workers/fund_public_goods/lib/gitcoin/functions.py similarity index 100% rename from workers/fund_public_goods/lib/gitcoin/scrapers.py rename to workers/fund_public_goods/lib/gitcoin/functions.py diff --git a/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py b/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py index 6aabe16..d81311d 100644 --- a/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py +++ b/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py @@ -4,7 +4,7 @@ from pydantic import parse_obj_as from fund_public_goods.lib.gitcoin.models import ApplicationInfo, ProjectApplicationInfo, ProjectInfo, RoundInfo from fund_public_goods.workflows.index_gitcoin.events import IndexGitcoinPageEvent -from fund_public_goods.lib.gitcoin.scrapers import fetch_json_from_ipfs, fetch_project_applications, fetch_rounds +from fund_public_goods.lib.gitcoin.functions import fetch_json_from_ipfs, fetch_project_applications, fetch_rounds from fund_public_goods.db.tables.gitcoin import save_application, stop_and_mark_job_as_failed, stop_job, update_job_progress, upsert_project PAGE_REQUEST_FREQUENCY_SECONDS = 5 # 10 seconds From 9853047ea6f63be32325b1dbf90358a361a9a648 Mon Sep 17 00:00:00 2001 From: dOrgJelli Date: Thu, 25 Jan 2024 13:28:05 +0100 Subject: [PATCH 4/4] chore: rename lib/functions lib/utils --- .../fund_public_goods/lib/gitcoin/{functions.py => utils.py} | 0 .../lib/strategy/{functions => utils}/__init__.py | 0 .../lib/strategy/{functions => utils}/assign_weights.py | 0 .../lib/strategy/{functions => utils}/evaluate_projects.py | 2 +- .../lib/strategy/{functions => utils}/generate_queries.py | 0 .../workflows/create_strategy/functions/create_strategy.py | 4 ++-- .../workflows/index_gitcoin/functions/index_gitcoin_page.py | 2 +- 7 files changed, 4 insertions(+), 4 deletions(-) rename workers/fund_public_goods/lib/gitcoin/{functions.py => utils.py} (100%) rename workers/fund_public_goods/lib/strategy/{functions => utils}/__init__.py (100%) rename workers/fund_public_goods/lib/strategy/{functions => utils}/assign_weights.py (100%) rename workers/fund_public_goods/lib/strategy/{functions => utils}/evaluate_projects.py (98%) rename workers/fund_public_goods/lib/strategy/{functions => utils}/generate_queries.py (100%) diff --git a/workers/fund_public_goods/lib/gitcoin/functions.py b/workers/fund_public_goods/lib/gitcoin/utils.py similarity index 100% rename from workers/fund_public_goods/lib/gitcoin/functions.py rename to workers/fund_public_goods/lib/gitcoin/utils.py diff --git a/workers/fund_public_goods/lib/strategy/functions/__init__.py b/workers/fund_public_goods/lib/strategy/utils/__init__.py similarity index 100% rename from workers/fund_public_goods/lib/strategy/functions/__init__.py rename to workers/fund_public_goods/lib/strategy/utils/__init__.py diff --git a/workers/fund_public_goods/lib/strategy/functions/assign_weights.py b/workers/fund_public_goods/lib/strategy/utils/assign_weights.py similarity index 100% rename from workers/fund_public_goods/lib/strategy/functions/assign_weights.py rename to workers/fund_public_goods/lib/strategy/utils/assign_weights.py diff --git a/workers/fund_public_goods/lib/strategy/functions/evaluate_projects.py b/workers/fund_public_goods/lib/strategy/utils/evaluate_projects.py similarity index 98% rename from workers/fund_public_goods/lib/strategy/functions/evaluate_projects.py rename to workers/fund_public_goods/lib/strategy/utils/evaluate_projects.py index a216585..19a3623 100644 --- a/workers/fund_public_goods/lib/strategy/functions/evaluate_projects.py +++ b/workers/fund_public_goods/lib/strategy/utils/evaluate_projects.py @@ -5,7 +5,7 @@ from langchain_core.output_parsers.json import JsonOutputParser from langchain_openai import OpenAIEmbeddings from langchain.vectorstores.chroma import Chroma -from fund_public_goods.lib.strategy.functions.generate_queries import generate_queries +from fund_public_goods.lib.strategy.utils.generate_queries import generate_queries from fund_public_goods.lib.strategy.models.evaluated_project import EvaluatedProject from fund_public_goods.lib.strategy.models.project import Project from fund_public_goods.lib.strategy.models.project_evaluation import ProjectEvaluation diff --git a/workers/fund_public_goods/lib/strategy/functions/generate_queries.py b/workers/fund_public_goods/lib/strategy/utils/generate_queries.py similarity index 100% rename from workers/fund_public_goods/lib/strategy/functions/generate_queries.py rename to workers/fund_public_goods/lib/strategy/utils/generate_queries.py diff --git a/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py b/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py index 5aa6c00..0638f48 100644 --- a/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py +++ b/workers/fund_public_goods/workflows/create_strategy/functions/create_strategy.py @@ -1,7 +1,7 @@ import inngest from supabase import Client -from fund_public_goods.lib.strategy.functions.assign_weights import assign_weights -from fund_public_goods.lib.strategy.functions.evaluate_projects import ( +from fund_public_goods.lib.strategy.utils.assign_weights import assign_weights +from fund_public_goods.lib.strategy.utils.evaluate_projects import ( evaluate_projects, ) from fund_public_goods.lib.strategy.models.evaluated_project import ( diff --git a/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py b/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py index d81311d..37ba6eb 100644 --- a/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py +++ b/workers/fund_public_goods/workflows/index_gitcoin/functions/index_gitcoin_page.py @@ -4,7 +4,7 @@ from pydantic import parse_obj_as from fund_public_goods.lib.gitcoin.models import ApplicationInfo, ProjectApplicationInfo, ProjectInfo, RoundInfo from fund_public_goods.workflows.index_gitcoin.events import IndexGitcoinPageEvent -from fund_public_goods.lib.gitcoin.functions import fetch_json_from_ipfs, fetch_project_applications, fetch_rounds +from fund_public_goods.lib.gitcoin.utils import fetch_json_from_ipfs, fetch_project_applications, fetch_rounds from fund_public_goods.db.tables.gitcoin import save_application, stop_and_mark_job_as_failed, stop_job, update_job_progress, upsert_project PAGE_REQUEST_FREQUENCY_SECONDS = 5 # 10 seconds