Serve economy reports on the v2 routes and save v2 report and simulation IDs
Maintainer antworten meist innerhalb von 2 Tagen
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
Rechercherichtung
Start with the existing Public API v2 routes for saved reports and simulations, then read the simulation service routes that create, run, and read economy reports and simulations. Trace how country settings are checked before service calls and how saved IDs are validated. Done means the v2 economy report routes support the listed read, submit, list, rerun, and run-history operations, reject household-only countries with a 422 before calling the service, and accept validated v2 IDs for saved records.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
The Public API's v2 routes can save a user's reports and simulations, but only as references to v1 records, and there is no v2 route that calculates or reads an economy (society-wide) report. The simulation service is gaining routes that create, run and read economy reports and their simulations in its own database.
This adds /v2/reports for economy reports on top of those routes: submit a report, read it (by ID or by the v1 report number it was migrated from), list chosen reports, run it again on the current catalog version (optionally recalculating both simulations), and list its runs with the versions each used. A report migrated from v1 has no run, so it is calculated the first time it is read.
It also lets saved reports and saved simulations hold the v2 IDs of those records, checked with the simulation service before they are saved, since the tables keep no foreign key to another service's database.
A country whose countries row does not allow society-wide calculations (a household-only country) must be refused with a 422 naming it, before anything is sent to the simulation service.
Nothing in the app calls these routes yet.
- Vorherrschende Sprache
- Python
- Sterne
- 18
- Forks
- 33
- Ø Merge
- 2 T. 7 Std.
- Gemergte PRs (30 T.)
- 64
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus PolicyEngine/policyengine-api
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
PolicyEngine/policyengine-api#4037 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 1/5 1-3 Stunden Anfängerfreundlichkeit 88/100
PolicyEngine/policyengine-api#3911 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
PolicyEngine/policyengine-api#3910 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Split the release tests over six runners, and stop repeating the merge run's checks on the release commitEvtl. vergeben @anth-volk hat das heute übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 25/100
PolicyEngine/policyengine-api#4133 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
PolicyEngine/policyengine-api#4131 ·
Maintainer antworten meist innerhalb von 2 Tagen
Alle Issues in PolicyEngine/policyengine-api
Ähnliche Issues
-
enhancement help wanted
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Git-Hospital/githealthcheck#61 ·
Maintainer antworten meist innerhalb von 1 Tag
-
changelog investigate
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 67/100
ramnes/notion-sdk-py#433 ·
-
Partial method descriptors raise on class accessEvtl. vergeben @Gambit-Checkmate hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 19 Tagen
-
docs pkg:core
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 84/100
pydantic/pydantic-ai#11929 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
intake/intake-esm#789 ·