Changelog

All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/).

14.6.0

  • New major version of ODA Updated to ODA v18.0.0

  • Uses the updated ska_db_oda.common.uow UnitOfWork for ODA requests.

  • [BUGFIX] Fixed issue with target validation on generated Low commissioning SBs

14.5.0

  • [BUGFIX] Fixes error message for MID targets below the elevation range

  • Improves validation of Solar System objects

  • [BUGFIX] Restore LOW targets below 45 degree elevation warning

  • Adds /engineering API path with functionality to create and update EBs. This is to be used in notebooks now the ODA API is removed

14.4.1

  • [BUGFIX] Fixes inconsistency with target validation and scan validation

  • [BUGFIX] Fixes bug where SBD without scans fails validation

14.4.0

  • Adds PST and PSS parameters to the /configuration response for LOW

  • Adds further validation for multiple subarray beams

  • Adds a new POST /{prj_id}/{ob_id}/generateGSMSurveySBDefinitions endpoint that will generate SBDefinitions from the pointings file (currently stored in this repo as well) and other inputs.

  • Adds quality_attribute_metrics to low configurations from OSD

  • [BUGFIX] fixing constraint validation that did not correctly take the scan duration into account

  • [BUGFIX] fixing constraint validation that did not correctly account for LST constraints that span midnight

14.3.0

  • Adding validation for the observing constraints

14.2.2

  • [BUGFIX] Improvements to defaults in commissioning SBD generation (use AA1, set SDP vis-recieve script, add SBD name). Fixes bug in UI when stations are given in generation input.

14.2.1

  • [BUGFIX] Fixes bug where AltAz targets cannot be validated

14.2.0

  • Adds a new POST /{prj_id}/{ob_id}/generateCalibratorSweepSBDefinition endpoint that generates an SBD with a dynamic number of targets/scans based on the expected time of execution.

  • Adds a new POST /{prj_id}/{ob_id}/generateFrequencySweepSBDefinition endpoint that generates an SBD with a dynamic number of CSP Configurations and scans that span the desired frequency range.

14.1.1

  • [BUGFIX] Fixes bug where only ICRS targets could be validated

14.1.0

  • Updated to OSD v6

  • Updated to ODA v17.3.0

  • Updated /configuration response to return observing constraints

14.0.2

  • [BUGFIX] Handles change from coarse_channel_width to coarse_channel_width_hz in OSD

14.0.1

  • [BUGFIX] Fixes bug where SBD status updates were not being committed

14.0.0

  • [BREAKING] Update to ODA v17.0.1 with ADR-129 SKUIDs

13.2.0

  • Adds PUT /sbds/{sbd_id}/status/ready and PUT /sbds/{sbd_id}/status/draft

  • Updates to POST /panels/generate to generate both SV panel and Science Category panels

  • Updated OSD to v5.2.1

  • Added GET /prsls/osd/cycles

13.1.1

  • Further updates to the validation error messages

13.1.0

  • [BUGFIX] Fixes validate_mccs bug where scan validation returned after first error

  • Updates the validation error messages

  • Updates ODA v15.3.0-rc.3 and PDM v27.1.1

13.0.0

  • Added caching to improve validate SBDefinition performance

  • Add GET /prjs/{prj_id}/status and GET /sbds/{sbd_id}/status

  • Adds PUT /prjs/{prj_id}/status/ready and PUT /prjs/{prj_id}/status/draft

  • Add the prj_status to the return value of the /odt/prsls/project-view API

  • Changes to PUT /pht/panels/{panel_id} to enforce proposal–panel exclusivity and correct proposal status transitions.

  • [BREAKING] Delete the unused /sbds/validate API in favour of the validation service /validate/sbds

  • [BUGFIX] Return CORS headers on errors

  • Updated /pht/panels/generate to generate both SV and proposals panels

12.1.0

  • [BUGFIX] Pass scan validation if no SPWs are defined on a CSP configuration

  • Improved handling of the linking of Project -> OBs -> SBDs in the /prjs APIs, given the new database tables

  • Added DELETE /prjs/{prj_id}/{obs_block_id} and DELETE /sbds/{sbd_id} APIs

  • [BUGFIX] fix bug in PUT /oso/api/v12/pht/panels/{panel_id} endpoint due to wrong database column query

  • Added further SBD validation for CSP Configurations and Targets for both Mid and Low, and MCCS

12.0.0

  • [BREAKING] Update to ODA v15.1.0 with PDM v27.0.0

11.4.0

  • Updated /configuration end point to return all the basic capabilities in the OSD for Low

11.3.0

  • Update generated SBDs to have scan intents

  • Update OSD to v5.2.0

  • Update /configuration endpoint to include Low-ITF, AA2_SV and Mid_ITF and to also return available_bandwidth_hz, number_pst_beams and number_fsps for both Mid and Low and number_substations and number_subarray_beams for Low only

  • Fixed precision of the Galactic look-up response

  • [BUGFIX] make channel_width_hz optional in OSD response model for PHT

11.2.0

  • Update ODA to v14.3.0

11.1.0

  • Adds validation package with an API to validate SBDefinition

  • Adds project purpose to projects generated from proposals and constrains it to be ‘Science’

11.0.0

  • [BUGFIX] Updates /coordinates/galactic to return a PDM target with a galactic coordinate object

10.1.0

  • Update OSD version to 5.1.0 and change ObservatoryPolicy, CyclePolicies, and TelescopeCapabilities models.

10.0.2

  • Update ODA to v14.0.4

10.0.1

  • [BUGFIX] Nest continuum-imaging script parameters inside ‘continuum_imaging’ key and retrieve script version from SDP TMData

10.0.0

  • [BREAKING] Updates ODA version to 14.0.0 and OSD version to 5.0.0

  • [BUGFIX] Fix index error when generating SBDs from Observation Info without calibration strategy notes

  • [BUGFIX] Update to ODA 13.1.1 with better error handling of postgres connections

  • [BUGFIX] Set PGUSER to <.Values.global.oda.postgres.database>_admin if .Values.global.oda.postgres.user isn’t set

  • Adds SDP configurations to Scheduling Blocks generated from Proposals

  • Changes the SDP TMData source Helm configuration key from ska-oso-services.rest.sdp.tmdata to global.oso.sdp_tmdata

  • Updates SBD generation from Project to handle additional script parameters

  • Improvements to target catalog error handling and logging

  • Update the target catalog lookup response to return a PDM object with an extra equatorial/galactic deprecated field from the old response. This means the change is backwards compatible, giving chance for users to update to migrate to use the Target object. * Adds visibility plot endpoint to common * Updates panel assignment to also create reviews and decisions * Updates report to show all statuses and return location fo the PI

9.2.0

  • Adds the AA2 to the list of array assemblies that are retrieved from the OSD

  • Adds function to find the appropriate calibrator given Target and an Observing Strategy

  • Adds applying calibration strategy to LOW Scheduling Blocks generated from Proposals

  • Updates ODA to v13.1.0

9.1.0

  • Adds a /calibrators endpoint that returns a list of approved LOW Calibrator targets

9.0.0

  • Add calibration strategy module with default observatory strategy and lookup

  • [BREAKING] Removes /panels/auto-create and Adds /panels/assignments and panels/generate

  • Updates ODA to v12.1.1

  • Removes review_submitted_on from report

8.0.0

  • [BREAKING] Update to ODA v12.0.0 which deploys Postgres via the operators. This involves some updates to the global Helm values used by the chart.

  • Adds API for retrieving SDP script versions and script parameters

  • [BREAKING] Update error handlers to all return same format details

7.0.0

  • [BREAKING] Update to ODA v11.8.0 which pulls in PDM v23.0.0

  • [BREAKING] Updates pht/prsl/create to return the created proposal instead of the proposal id (prsl_id).

  • Adds PI details to the proposal when created.

  • Updates /panel/decision/{decision_id} to update proposal status when decision is decided

  • Updates /reviewable endpoint to allow access by admin, reviewers, sw_eng and review_chair but with restrictions based on roles

  • Updates the /reviews so review chair can retrieve reviews

  • Updates proposal status to under review when the panel is updated

6.0.0

  • Updates permissions for panel decisions

  • [BREAKING] Updates pht/panel/users/{user_id}/decision to pht/panel/decision so user id is pulled from token.

  • Update to ODA v11.7.1 which pulls in PDM v22.1.1

5.2.0

  • Update to OSD v4.2.1 and add the Band 5b sub-bands to the ODT /configuration endpoint response

  • Update to ODA v11.7.0 which pulls in PDM v22.1.0

5.1.0

  • Adds /pht/prsls/member/{email} to search user by email

  • Updates the put panel endpoint to create proposal decisions.

  • Update ingress rule and add Values.nameOverride so that multiple major versions of the chart can be deployed into the same namespace

  • Updates /pht/prsls/reviewers to retrieve users with science/technical reviewer roles

  • Update to ODA v11.6.0 which pulls in PDM v22.0.0

5.0.0

  • Allows multiple technical reviews creation for a panel

  • Adds the created_by for panels

  • [BREAKING] Updates the /users/{user_id}/panels to / to return all panels regardless the user

  • [BREAKING] Updates /users/{user_id}/reviews to /users/reviews to retriev user from token

  • [BREAKING] Updates /status/{status} to /reviewable and no user input

  • Adds PHT specific roles

4.0.4

  • Return only the latest version of projects and proposals from prsls/project-view endpoint

  • Return only proposals that are not in DRAFT from prsls/project-view endpoint

4.0.3

  • Updates ODA version to 11.5.1

4.0.2

  • Updates Roles to ANY for Validate endpoint

4.0.1

  • Updates email, pdfs endpoints for the PHT to use Role.Any

4.0.0

  • Fixes the issue when a technical review already exists so a new one is not created

  • [BREAKING] Updates the PHT endpoints such that they are coherent e,g POST entity/create

  • [BREAKING] Updates the retrieval of entities endpoint from entity/list/{id} to be entity/users/{id}/entity

  • Panel auto-create can now update the submitted proposals for Science Verification

  • Fixes the bug with the report endpoint.

  • Creates Science reviews as part of the panel update endpoint.

  • Updates ODA version to 11.5.0

  • Add /odt/prsls/project-view endpoint which returns a view for the UI of an outer join of the Proposals and Projects

  • Write user from auth context to entity metadata for ODT endpoints

  • [BREAKING] Use Helm global values for ODA configuration rather than ska-oso-services chart ones

  • Deploy Secret for ODA password rather than relying on external one from ODA chart

3.1.1

  • Allow ODT read scope on proposal search

  • Copy name when generating Project from Proposal

3.1.0

  • Auto technical review creation using the PUT panel update endpoint

  • Allow OPERATIONS_SCIENTIST role to use the ODT API endpoints

3.0.0

  • [BREAKING] Adds AAA protection to PHT endpoints

  • [Breaking] Upgraded OSD to version 4.0.0

  • [Breaking] Updates ODA version to 11.3.0

  • Updated ODA to v11.1.0

  • Adds auto-panel creation POST endpoint based on cycle description

  • Adds separate PUT endpoint to update panels

  • Updates ska-aaa-authhelpers version to 1.1.0

  • Updates POST reviews endpoint to check if a review already exist under a different id before creating new review

  • Added POST /pht/proposal-access/create for pht

  • Added GET /pht/proposal-access/user for pht

  • Added GET /pht/proposal-access/user/{prsl_id} for pht

  • Added PUT /pht/proposal-access/user/{access_id} for pht

  • Adds module_view page and diagrams to documentation

  • Adds the functionality to create permission when a proposal is created

  • Adds the functionality to check permission when a user gets a proposal by user_id from auth and prsl_id

  • Adds the functionality to check permission when a user submit/update a proposal

2.0.3

  • Set Observing Block name when generating a Project

  • Set CSP config and Target name when generating SBDefinitions

2.0.2

  • NOTE: Due to a pipeline concurrency issue, this release wrongly includes BREAKING changes compared to 2.0.0 (namely PHT endpoint AAA). Please do not use this release, and instead use 2.0.3

2.0.1

  • NOTE: Due to a pipeline concurrency issue, this release wrongly includes BREAKING changes compared to 2.0.0 (namely PHT endpoint AAA). Please do not use this release, and instead use 2.0.3

2.0.0

  • [BREAKING] Updated ODA to version 11.0.0 (python package and helm chart)

  • [BREAKING] Updated ODT’s SBD generator to populate scan sequence within MCCS/Dish allocation instead of at root SBD level (as implemented in PDM v19.0.0)

  • Added LOW/MID_TELESCOPE_OPERATOR roles to all ODT endpoints

  • Updated /reports/ endpoint to pull proposals of all statuses except withdrawn and draft

  • Updated the status of a submitted proposal to be changed on assignment to a panel

1.3.0

  • Updated OSD data endpoint and introduced a model to OSD dict

  • Updated /reports/{user_id} to /reports/ so no user_id is required

  • Updated /reviews/{panel_id} to /reviews/{prsl_id} to query by proposal id and not panel_id

  • Added /status/{status} so Proposal management admin/coordinator can get all submitted proposals

  • Added /batch to retrieve a list of proposals based on supplied list of proposal ids

1.2.0

  • Added ska-ser-xray as a dev dependency

  • Added documentation for proposal endpoints

  • Updated docker base images to ska-build-python v0.3.1 and ska-python v0.2.3 and regenerated poetry.lock

  • Added PHT GET endpoint to retrieve osd data by cycle

  • Added a POST /odt/prsls/{prsl_id}/generateProject API endpoint

  • Added a GET API endpoint /report to retrieve needed data for admin PHT dashboard

  • Added a API endpoints to create, retrieve and update panels for the PHT

  • Added a API endpoints to create, retrieve and update reviews for the PHT

  • Added a API endpoints to create, retrieve and update panel decision for the PHT

  • Added API /odt/prjs/{prj_id}/generateSBDefinitions & /odt/prjs/{prj_id}/{obs_block_id}/generateSBDefinitions endpoints to generates SBDefinitions from Projects

  • Added a GET /reviews/{panel_id} endpoint to retrieve all the reviews for a particular panel

1.1.0

  • Added all pht endpoints: - Updated the ska-oso-oda version to v8.0.0 - POST endpoint to create a proposal - PUT endpoint to update a proposal - GET endpoint to retrieve a proposal by proposal ID - GET endpoint to retrieve a list proposal by user - Validate POST endpoint to validate a proposal - POST Email and pdfs endpoints to send emails and generate signed urls for upload, download and delete actions.

1.0.1

  • Add ‘api://’ prefix to the audience used by AAA

1.0.0

  • [BREAKING] AAA now enforced on all API resources. A valid JWT token with the correct scope, audience and group membership must be sent in the Authorization header for all requests. See ska-aaa-authhelpers and Solution Intent for more details.

  • Update the docker base images (BTN-2661)

0.8.0

  • Update to ODA v7.4.0 and fastapi v0.115.8

0.7.0

  • Added AA0.5 and AA1 subarray information /configuration endpoint response for both mid and low telescopes

  • Updated to OSD v3.1.1

0.6.0

  • Create Projects and SBDefinitions with a default READY status. (Note: no other status updates are implemented yet)

0.5.0

  • Update the Helm charts so that they have better defaults and require minimal changes in the makefile. See the docs Deployment > Configuration page.

  • Pull the ODA password from a k8s secret

  • Update to ODA v7.3.0 and handle new ODA errors

0.4.1

  • Upgraded to astroquery 0.4.9

  • Changed coordinateslookup.py to work with Pydantic even when the source doesn’t have a velocity or redshift

  • For SIMBAD, the velocity or the redshift is set, depending on which is the master value

  • The redshift is now set if the source is found via NED

  • Test file renamed to test_coordinates.py so that tests will run

  • More tests were added for e.g. source in NED and not SIMBAD, as well as source not found at all

  • [BREAKING]: No source found returns a 404 error

0.4.0

  • Update to ODA v7.2.0 with PDM v17.1.2

  • New API endpoint: Added /configuration to fetch static information from the OSD and return in a format required by the ODT UI

  • New API endpoint: Copy the /coordinates end point from the PHT to resolve target coordinates

  • Added a request body to /api/v0/odt/prjs/{identifier}/{obs_block_id}/sbds so can add some SBDefintion data in same request

0.3.1

  • Remove validation of dish config from mid

0.3.0

  • Updated - Saving a Low SB using ODT services no longer causes dish validation error

  • Updated ODA to v6.1.0 which brings in PDM v15.4.0

0.2.0

  • Updated ODA to v6.0.0 which no longer supports REST Repository. Added config to ska-oso-services to enable direct Postgres connection.

  • Converted from Flask application into FastAPI

0.1.0