microsoft / carbon-aware-sdk

Carbon-Aware Core SDK
MIT License
14 stars 9 forks source link

Electricity Maps Data Source Implementation for Location and Batch #194

Closed esgraham closed 1 year ago

esgraham commented 1 year ago

Description

As a Carbon Aware Application Developer, I want to get the actual average carbon intensity rate for by locations and in batches using Electricity Maps data, so that I can get the Average Marginal Carbon Intensity rate for an Azure Batch job.

# Acceptance Criteria - [ ] Ensure that if the configuration is set to use Electricity Maps for emissions, the results for emissions/bylocation return Electricity Maps' average carbon intensity rate for that location and time period - [ ] Ensure that if the configuration is set to use Electricity Maps for emissions, the results emissions/bylocations return Electricity Maps' average carbon intensity rate for all locations and time period - [ ] Ensure that if the configuration is set to use Electricity Maps for emissions, the results emissions/bylocations/best return Electricity Maps' lowest average carbon intensity rate for all locations and time period - [ ] Ensure that if the configuration is set to use Electricity Maps for emissions, the results emissions/average-carbon-intensity/batch return Electricity Maps' lowest average carbon intensity rate for all locations and time periods - [ ] Ensure that the CLI emissions route return Electricity Maps data for the location and best flags. - [ ] Ensure that an error is returned that lets the user know their subscription does not have access to the route or zone and to contact Electricity Maps for more information. - [ ] Ensure that if the custom parameters are not set, then no values are sent to Electricity Map for emissionFactorType or disableEstimations - [ ] If a custom parameter value for emissionFactorType is not 'direct' or 'lifecycle' the value is sent to Electricity Maps, and the error is handled by Electricity Maps and forwarded to the consumer layer. - [ ] Unit Tests are completed and code passes tests - [ ] Ensure documentation is updated with Electricity Maps limitations and custom parameters for the bylocations, best, and batch endpoints - [ ] Ensure documentation explains the limitations with Electricity Maps historical forecasts. # Dependencies #174 # Task List - [ ] List of tasks (punchlist) needed to complete the user story # Sprint-Ready Checklist - [x] Acceptance criteria defined - [x] Acceptance criteria is verifiable / testable - [x] External / 3rd Party dependencies identified - [ ] Engineering team understands acceptance criteria - [x] Is the user story small enough to be implemented in a short amount of time, but large enough to provide value?
gfmatthews commented 1 year ago

@bderusha / @esgraham - Can you help me understand the difference between this issue and #174 ?

esgraham commented 1 year ago

174 was to implement the emissions/average-carbon-intensity route only in the data source (MVP for Vestas). This user story is to align the data source with the Emissions interface and add additional routes.