alan-turing-institute / AssurancePlatform

Project to facilitate creation of Assurance Cases
MIT License
17 stars 6 forks source link

[User Story]: Implement GitHub Integration for Sharing and Collaborating on Assurance Cases #433

Open kallewesterling opened 2 months ago

kallewesterling commented 2 months ago

Role

As a user of the TEA platform

Desired Feature

I want to connect my GitHub account to share and manage assurance cases directly through public and private repositories

Benefit

So that I can collaborate with others in the community, contribute to public resources, and manage version control of assurance cases more effectively

Acceptance Criteria

GIVEN I am logged into the TEA platform, AND I have connected my GitHub account, WHEN I choose to share an assurance case, THEN I can select from my GitHub repositories where to store the JSON file, AND I can select if the repository is public or private, AND the platform displays repositories as folders in the case selector interface, AND only valid JSON files from selected repositories are shown.

Dependencies

Technical Notes

Definition of Done

kallewesterling commented 2 months ago

We have talked about this feature as something that will help build a community of practice, as users can share their assurance cases with selected communities on the GitHub platform. It will also enable us to build a public resource of assurance cases as users will be able to open pull requests into a public repository where we can provide (approve, really, the assurance cases in selected PRs) as examples of best practice.

Perhaps this means (as described in this user story) that there should be another page in the frontend "case selector" where users will be able to see repositories from GitHub that they have selected as available to the platform through the oAuth connection to their GitHub account, as "folders" which selectively show the valid JSON files from that repository.