Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Public Release for Fall24 meta-release #148

Merged
merged 31 commits into from
Sep 6, 2024
Merged
Show file tree
Hide file tree
Changes from 26 commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
60db1b4
Update sim-swap.yaml
bigludo7 Aug 23, 2024
86617b9
Update sim-swap-subscriptions.yaml
bigludo7 Aug 23, 2024
784a17e
Update sim-swap-API-Readiness-Checklist.md
bigludo7 Aug 23, 2024
c83b001
Update sim-swap-API-Readiness-Checklist.md
bigludo7 Aug 23, 2024
06c98e6
Update sim-swap-API-Readiness-Checklist.md
bigludo7 Aug 23, 2024
72e5c1a
Update sim-swap-subscriptions-API-Readiness-Checklist.md
bigludo7 Aug 23, 2024
297feef
Update README.md
bigludo7 Aug 23, 2024
8178ac3
Update README.md
bigludo7 Aug 23, 2024
dee92c8
Update CHANGELOG.md
bigludo7 Aug 23, 2024
d296e0f
Update CHANGELOG.md
bigludo7 Aug 23, 2024
a924182
Update README.md
bigludo7 Aug 23, 2024
4f33ccd
Update CHANGELOG.md
bigludo7 Aug 23, 2024
ea61978
Update CHANGELOG.md
bigludo7 Aug 23, 2024
f1b1bfe
Update CHANGELOG.md
bigludo7 Aug 23, 2024
d72e9b6
Update CHANGELOG.md
bigludo7 Aug 23, 2024
07b54be
Update CHANGELOG.md
bigludo7 Aug 23, 2024
e6d0197
Update CHANGELOG.md
bigludo7 Aug 23, 2024
b376efa
Update code/API_definitions/sim-swap-subscriptions.yaml
bigludo7 Aug 23, 2024
3286af2
Update documentation/API_documentation/sim-swap-subscriptions-API-Rea…
bigludo7 Aug 23, 2024
30958fd
Update documentation/API_documentation/sim-swap-subscriptions-API-Rea…
bigludo7 Aug 23, 2024
f14dc85
Update documentation/API_documentation/sim-swap-subscriptions-API-Rea…
bigludo7 Aug 23, 2024
1b65846
Update CHANGELOG.md
bigludo7 Aug 23, 2024
306237f
Update CHANGELOG.md
bigludo7 Aug 23, 2024
b2e975c
Update and rename checkSimSwap.feature to check-sim-swap.feature
bigludo7 Aug 29, 2024
47c3c68
Update and rename retrieveSimSwapDate.feature to retrieve-sim-swap-da…
bigludo7 Aug 29, 2024
6f90939
Update sim-swap-API-Readiness-Checklist.md
bigludo7 Aug 29, 2024
61e299b
Update documentation/API_documentation/sim-swap-subscriptions-API-Rea…
bigludo7 Sep 3, 2024
73c4535
Update check-sim-swap.feature
bigludo7 Sep 3, 2024
456890f
Update retrieve-sim-swap-date.feature
bigludo7 Sep 3, 2024
313aa4d
Update sim-swap-subscriptions.feature
bigludo7 Sep 3, 2024
a37dd70
Update sim-swap-API-Readiness-Checklist.md
bigludo7 Sep 5, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
91 changes: 84 additions & 7 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
# Changelog CAMARA SimSwap

## Table of Contents
## Table of contents

- [r1.1](#r11)
- [v0.4.0](#v040)
- **[r1.2](#r12)**
- **[r1.1](#r11)**
- **[v0.4.0](#v040)**

**Please be aware that the project will have frequent updates to the main branch. There are no compatibility guarantees associated with code in any branch, including main, until it has been released. For example, changes may be reverted before a release is published. For the best results, use the latest published release.**

Expand All @@ -13,7 +14,85 @@ The below sections record the changes for each API version in each release as fo
* for subsequent alpha or release-candidate API versions, the delta with respect to the previous pre-release
* for a public API version, the consolidated changes since the release of the previous public API version

# r1.1 - rc
# r1.2

## Release Notes

This release contains the definition and documentation of
* sim-swap 1.0.0
* sim-swap-subscriptions 0.1.0

The API definition(s) are based on
* Commonalities v0.4.0
* Identity and Consent Management v0.2.0

## sim-swap 1.0.0

**sim-swap 1.0.0 is the public release for v1.0.0 of the Sim Swap API.**

- API definition **with inline documentation**:
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.2/code/API_definitions/sim-swap.yaml&nocors)
- [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.2/code/API_definitions/sim-swaps.yaml)
- OpenAPI [YAML spec file](https://github.com/camaraproject/SimSwap/blob/r1.2/code/API_definitions/sim-swap.yaml)

**Main Changes**
* API and test definitions updated to conform to the Commonalities v0.4.0 and Identity and Consent Management v0.2.0 guidelines included in the CAMARA Fall24 meta-release
* Additional documentation & test cases added.


### Added
* User Story in documentation/API_documentation directory by @jgarciahospital [PR125](https://github.com/camaraproject/SimSwap/pull/125)
* Test Definition in Test_Definitions directory by @fernandopradocabrillo [PR70](https://github.com/camaraproject/SimSwap/pull/70)
* Added the API name `sim-swap` as a scope to request access to both available endpoints by @AxelNennker in https://github.com/camaraproject/SimSwap/pull/103

### Changed
* Made response properties `latestSimChange` and `swapped` required since they will always be returned by @fernandopradocabrillo in https://github.com/camaraproject/SimSwap/pull/97
* Updated pattern to make the '+' mandatory for phoneNumber by @bigludo7 in https://github.com/camaraproject/SimSwap/pull/100
* Replaced "MSISDN" with "phone number" in descriptions to follow Commonalities guidelines by @gregory1g in https://github.com/camaraproject/SimSwap/pull/116
* Removed unused errors and align with Commonalities error definitions by @fernandopradocabrillo in https://github.com/camaraproject/SimSwap/pull/126

### Fixed
* N/A

### Removed
* N/A

## New Contributors
* N/A

## Sim Swap Subscriptions v0.1.0

**sim-swap-subscriptions v0.1.0 is the first initial version for the CAMARA Sim Swap Subscriptions API**

- API definition **with inline documentation**:
- OpenAPI [YAML spec file](https://github.com/camaraproject/SimSwap/blob/r1.2/code/API_definitions/sim-swap-subscriptions.yaml)
- [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.2/code/API_definitions/sim-swap-subscriptions.yaml&nocors)
- [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.2/code/API_definitions/sim-swap-subscriptions.yaml)

**Main Changes**
* Initial contribution of the API definition for Sim Swap Subscriptions allowing API consumers to subscribe to get notified when a sim swap occurs on a device.
* API and test definitions updated to conform to the Commonalities v0.4.0 and Identity and Consent Management v0.2.0 guidelines included in the CAMARA Fall24 meta-release
* Test cases added.

### Added
* Initial yaml contribution by @bigludo7 [PR60](https://github.com/camaraproject/SimSwap/pull/60)
* Test Definition in Test_Definitions directory by @bigludo7 [PR147](https://github.com/camaraproject/SimSwap/pull/147)

### Changed
* N/A

### Fixed
* N/A

### Removed
* N/A

## New Contributors
* N/A

**Full Changelog**: https://github.com/camaraproject/SimSwap/compare/v0.4.0...r1.2

# r1.1

## Release Notes

Expand All @@ -36,14 +115,13 @@ This version contains significant changes compared to v0.4.0, and it is not back
- [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.1/code/API_definitions/sim_swap.yaml)

### Added

* User Story in documentation/API_documentation directory by @jgarciahospital [PR125](https://github.com/camaraproject/SimSwap/pull/125)
* Test Definition in Test_Definitions directory by @fernandopradocabrillo [PR70](https://github.com/camaraproject/SimSwap/pull/70)
* add API-Name aka wild-card scope by @AxelNennker in https://github.com/camaraproject/SimSwap/pull/103

### Changed
* Make response properties "latestSimChange" and "swapped" required since they will always be returned [Issue 96](https://github.com/camaraproject/SimSwap/issues/96)
* Update SIM Swap & SIM Swap notification subscription yaml to make the '+' mandatory for phoneNumber by @bigludo7 in https://github.com/camaraproject/SimSwap/pull/100
* Updated pattern to make the '+' mandatory for phoneNumber by @bigludo7 in https://github.com/camaraproject/SimSwap/pull/100
* phone number instead of MSISDN to follow communalities guidelines by @gregory1g in https://github.com/camaraproject/SimSwap/pull/116
* Remove unused errors and align with commonalities errors by @fernandopradocabrillo in https://github.com/camaraproject/SimSwap/pull/126

Expand All @@ -62,7 +140,6 @@ This version contains significant changes compared to v0.4.0, and it is not back

## Please note:

- This is an **alpha version**, it should be considered as a **draft**
- There are bug fixes to be expected and incompatible changes in upcoming versions
- The API version is suitable for test implementations and has the purpose to collect feedback for its further development. It should not be used with customers in productive environments.

Expand Down
28 changes: 15 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,19 +21,21 @@ Repository to describe, develop, document and test the SimSwap API family
## Status and released versions

* Note: Please be aware that the project will have frequent updates to the main branch. There are no compatibility guarantees associated with code in any branch, including main, until a new release is created. For example, changes may be reverted before a release is created. **For best results, use the latest available release**.
* The latest pre-release is [r1.1](https://github.com/camaraproject/SimSwap/releases/tag/r1.1). It contains:
* **sim-swap v1.0.0-rc.1**
* **This is the release candidate of the first stable version of the Sim Swap API**. It is suitable for implementors.
* API definitions (with inline documentation):
* OpenAPI [YAML](https://github.com/camaraproject/SimSwap/blob/r1.1/code/API_definitions/sim_swap.yaml)
* [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.1/code/API_definitions/sim_swap.yaml&nocors)
* [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.1/code/API_definitions/sim_swap.yaml)
* sim-swap-swap-subscriptions v0.1.0-alpha.1
* This is the first alpha version for CAMARA Sim Swap subscription API. It should considered as a draft.
* API definitions (with inline documentation):
* OpenAPI [YAML](https://github.com/camaraproject/SimSwap/blob/r1.1/code/API_definitions/sim-swap-subscriptions.yaml)
* [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.1/code/API_definitions/sim-swap-subscriptions.yaml&nocors)
* [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.1/code/API_definitions/sim-swap-subscriptions.yaml)
* `NEW`: Release r1.2 features following APIs:
* version 1.0.0 of the **API sim-swap** - available [here](https://github.com/camaraproject/SimSwap/tree/r1.2)
* API definitions **with inline documentation**):
* OpenAPI [YAML](https://github.com/camaraproject/SimSwap/blob/r1.2/code/API_definitions/sim_swap.yaml)
* [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.2/code/API_definitions/sim_swap.yaml&nocors)
* [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.2/code/API_definitions/sim_swap.yaml)
* version 0.1.0 of the **API sim-swap-subscriptions** - available [here](https://github.com/camaraproject/SimSwap/tree/r1.2)
* API definitions **with inline documentation**:
* OpenAPI [YAML](https://github.com/camaraproject/SimSwap/blob/r1.2/code/API_definitions/sim-swap-subscriptions.yaml)
* [View it on ReDoc](https://redocly.github.io/redoc/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.2/code/API_definitions/sim-swap-subscriptions.yaml&nocors)
* [View it on Swagger Editor](https://editor.swagger.io/?url=https://raw.githubusercontent.com/camaraproject/SimSwap/r1.2/code/API_definitions/sim-swap-subscriptions.yaml)

* The latest public release is available here: https://github.com/camaraproject/SimSwap/releases/latest
* Other releases of this sub project are available in https://github.com/camaraproject/SimSwap/releases
* For changes see [CHANGELOG.md](https://github.com/camaraproject/Simswap/blob/main/CHANGELOG.md)

## Contributing

Expand Down
5 changes: 3 additions & 2 deletions code/API_definitions/sim-swap-subscriptions.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -61,14 +61,15 @@ info:
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: wip
version: 0.1.0
x-camara-commonalities: 0.4.0

externalDocs:
description: Product documentation at CAMARA
url: https://github.com/camaraproject/
servers:
- url: '{apiRoot}/sim-swap-subscriptions/v0.1alpha1'
- url: '{apiRoot}/sim-swap-subscriptions/v0.1'

variables:
apiRoot:
default: http://localhost:9091
Expand Down
4 changes: 2 additions & 2 deletions code/API_definitions/sim-swap.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -73,13 +73,13 @@ info:
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0.html
version: wip
version: 1.0.0
x-camara-commonalities: 0.4.0
externalDocs:
description: Product documentation at Camara
url: https://github.com/camaraproject/SimSwap
servers:
- url: "{apiRoot}/sim-swap/v1rc1"
- url: "{apiRoot}/sim-swap/v1"
variables:
apiRoot:
default: http://localhost:9091
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ Feature: CAMARA SIM Swap API, 1.0.0 - Operation checkSimSwap
# Testing assets:
#
# References to OAS spec schemas refer to schemas specifies in sim_swap.yaml, version 1.0.0

check if SIM swap has been performed during a past period
#
# check if SIM swap has been performed during a past period

Background: Common checkSimSwap setup
Given the resource "sim-swap/v0/check"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It must be v1

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

Expand All @@ -15,7 +15,6 @@ Feature: CAMARA SIM Swap API, 1.0.0 - Operation checkSimSwap
And the header "x-correlator" is set to a UUID value
And the request body is set by default to a request body compliant with the schema


# This first scenario serves as a minimum, not testing any specific verificationResult
@check_sim_swap_1_generic_success_scenario
Scenario: Common validations for any sucess scenario
Expand All @@ -29,15 +28,15 @@ Feature: CAMARA SIM Swap API, 1.0.0 - Operation checkSimSwap
# Scenarios testing specific situations

@check_sim_swap_2_valid_sim_swap_no_max_age
Scenario: Check that the response shows that the SIM has been swapped
Scenario: Check that the response shows that the SIM has been swapped using default value for maxAge
Given the request header "Authorization" is set to a valid access token from which a phone number connected to the Operator's network can be deducted
And the SIM for this phone number has been swapped in the last 240 hours
When the request "checkSimSwap" is sent
Then the response status code is 200
And the value of response property "$.swapped" == true

@check_sim_swap_3_valid_sim_swap_max_age
Scenario Outline: Check that the response shows that the SIM has been swapped
Scenario Outline: Check that the response shows that the SIM has been swapped - maxAge is provided in the request
Given the request header "Authorization" is set to a valid access token from which a phone number connected to the Operator's network can be deducted
And the SIM for this phone number has been swapped in the last "<hours>"
And the "maxAge" request body property is set to a value equal or greater than "<hours>" within the allowed range
Expand All @@ -64,7 +63,7 @@ Feature: CAMARA SIM Swap API, 1.0.0 - Operation checkSimSwap
Scenario: Check that the response shows that the SIM has not been swapped when the last swap was before the maxAge field
Given the request header "Authorization" is set to a valid access token from which a phone number connected to the Operator's network can be deducted
And the request body property "maxAge" is set to the number of hours since the last SIM swap minus 1
And the last swap for this phone number's SIM was more than "maxAge" hours ago
And the last swap for this phone number's SIM was more than "maxAge" hours ago
When the request "checkSimSwap" is sent
Then the response status code is 200
And the value of response property "$.swapped" == false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ Feature: CAMARA SIM Swap API, 1.0.0 - Operation retrieveSimSwapDate
# Testing assets:
#
# References to OAS spec schemas refer to schemas specifies in sim_swap.yaml, version 1.0.0

Get timestamp of last MSISDN <-> IMSI pairing change for the provided phone number.
#
# Get timestamp of last MSISDN <-> IMSI pairing change for the provided phone number.

Background: Common retrieveSimSwapDate setup
Given the resource "sim-swap/v0/retrieve-date"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It must be v1

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done :)

Expand All @@ -25,7 +25,6 @@ Feature: CAMARA SIM Swap API, 1.0.0 - Operation retrieveSimSwapDate
And the response header "x-correlator" has same value as the request header "x-correlator"
And the response body complies with the OAS schema at "/components/schemas/SimSwapInfo"


# Scenarios testing specific situations

@retrieve_sim_swap_date_2_valid_sim_swap
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@ Checklist for sim-swap 1.0.0 in r1.2
| 3 | Guidelines from ICM applied | O | M | M | M | Y | |
| 4 | API versioning convention applied | M | M | M | M | Y | |
| 5 | API documentation | M | M | M | M | Y | Embed documentation into API spec - [link](/code/API_definitions/sim-swap.yaml) |
| 6 | User stories | O | O | O | M | Y | [check](documentation/API_documentation/SIM-Swap_check_User_Story.md) [retrieve](documentation/API_documentation/SIM-Swap_retrieve_User_Story.md) |
| 7 | Basic API test cases & documentation | O | M | M | M | Y | [PR#70](https://github.com/camaraproject/SimSwap/pull/70) |
| 8 | Enhanced API test cases & documentation | O | O | O | M | Y | [PR#70](https://github.com/camaraproject/SimSwap/pull/70) |
| 6 | User stories | O | O | O | M | Y | [check](/documentation/API_documentation/SIM-Swap_check_User_Story.md) [retrieve](/documentation/API_documentation/SIM-Swap_retrieve_User_Story.md) |
| 7 | Basic API test cases & documentation | O | M | M | M | Y | [check](/code/Test_definitions/check-sim-swap.feature) [retrieve](/code/Test_definitions/retrieve-sim-swap-date.feature) |
| 8 | Enhanced API test cases & documentation | O | O | O | M | Y | [check](/code/Test_definitions/check-sim-swap.feature) [retrieve](/code/Test_definitions/retrieve-sim-swap-date.feature) |
| 9 | Test result statement | O | O | O | M | N | |
| 10 | API release numbering convention applied | M | M | M | M | Y | |
| 11 | Change log updated | M | M | M | M | Y | [link](/CHANGELOG.md) |
| 12 | Previous public release was certified | O | O | O | M | N | |
| 12 | Previous public release was certified | O | O | O | M | Y | [link](https://www.open-gateway.com/operators-map) |

To fill the checklist:
- in the line above the table, replace the api-name, api-version and the rx.y by their actual values for the current API version and release.
Expand Down
Loading