Feature/og clews converging pipeline#24
Feature/og clews converging pipeline#24NamanmeetSingh wants to merge 7 commits intoEAPD-DRB:mainfrom
Conversation
Architecture Update: Hardening the Execution EngineWhile waiting for feedback on the initial PoC schemas, I've pushed a significant architectural upgrade to this branch to ensure the backend is production-ready and server-safe. Key Upgrades in this Commit:
I will begin drafting the |
|
Quick follow-up |
Using Demo Data Phase 1 Update: Official
|
|
Just cross-referencing some parallel work happening in the repo. As I noted in my commits 4 days ago on this PR, I originally had to build an asynchronous I was actually working locally this weekend to extract that exact async queue out of this Track 1 branch into a generic, standalone Architecture Plan moving forward: In the meantime, I am keeping this branch 100% focused on the Track 1 science: expanding the cc: @SeaCelo (Just keeping the mentors in the loop on how the Track 1 / Track 2 architecture is cleanly separating) |
|
Please update the PR body to include a real linked issue for this PR’s scope before we continue review. It currently has Closes # left blank and only a loose Related #23 reference. If there is not already a dedicated issue for this work, please open one first and then update this PR with a real Closes #... or Related #... reference. |
|
Thanks for the heads-up on the procedural requirement! I have updated the PR description to formally link and Closes #23 (the main Track 1 Architecture Proposal issue). Since this PR provides the foundational ETL schemas and the converging loop math outlined in that proposal, it fully satisfies the scope of that issue. Let me know if you'd prefer me to break the subsequent Pandas/Macroeconomic integration (currently in local dev) into a separate implementation issue moving forward to keep the trackers clean. Ready for the technical review whenever you have the bandwidth. |
…/ Issue EAPD-DRB#122) - Label: 'OG-Core' -> 'OG-Core Macroeconomy' - sidebarGroups: removed 'industry', renamed 'fiscal' -> 'fiscal_policy' - Routes: PascalCase controllers (Demographics, FiscalPolicy, Calibration) - Aligns with OG-Core backend integration structure



Summary
API/og_clews_integration/package to serve as the backend foundation for the coupled models.schemas.pyusingpydanticto establish strict data contracts forClewsOutputSchemaandOgCoreInputSchema.transformer.pyto isolate the Extract-Transform-Load (ETL) data wrangling logic.converger.pywhich implements an iterativewhileloop with a mathematical dampening algorithm (API/tests/test_pipeline.py.pydanticandpytesttorequirements.txt.Related issues
Validation
pip install -r requirements.txtto fetchpydanticandpytest.pytest API/tests/to validate that the schema catches invalid negative energy prices and that the transformer math executes correctly.python API/og_clews_integration/converger.pyto execute the mock simulation loop and view the dampening logic in the terminal.Documentation
Docs updated in this PR (or not applicable)
(Extensive docstrings added to all new classes and methods. Formal markdown docs will be added once the variables are finalized.)
Any setup/workflow changes reflected in repo docs
(Dependencies added to
requirements.txt.)Scope Check
EAPD-DRB/MUIOGO:main(not upstream)Questions for Maintainers (@SeaCelo , @autibet)
This is currently a conceptual Draft/PoC using a mocked macroeconomic variable to trigger loop termination. Before expanding this into the full pandas time-series integration:
What specific macroeconomic variables (e.g., specific GDP indices or interest rates) and energy variables do you typically monitor to declare historical convergence between these models?
Do you have preferred default thresholds ($\epsilon$ ) and dampening factors ($\alpha$ ) that you rely on to prevent divergent runs in production?