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 specs release 2.0+ #118

Closed
wants to merge 3 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 5 additions & 0 deletions .github/CODE_OF_CONDUCT.md
@@ -0,0 +1,5 @@
## Code of Conduct

This Code of Conduct is adapted from the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md).

Instances of abusive, harassing, or otherwise unacceptable behavior across GitHub [SafeSafe-app](https://github.com/SafeSafe-app) organization may be reported by contacting the SafeSafe-app Code of Conduct Committee via community@safesafe.app. For other projects, please contact apropriate project maintainer or our mediator - Mateusz Romanów mr@safesafe.app.
9 changes: 9 additions & 0 deletions .github/CONTRIBUTING.md
@@ -0,0 +1,9 @@
## Contributing
Our guidelines are mostly located around [.github](/.github/) directory of the project.

### ToC for contributors
- [Code of Conduct](CODE_OF_CONDUCT.md)
- [Issues & Support](SUPPORT.md)
- [License](/LICENSE)
- [Security](SECURITY.md)
- [Pull request](PULL_REQUEST_TEMPLATE/README.md)
38 changes: 38 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,38 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
24 changes: 24 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/README.md
@@ -0,0 +1,24 @@
## Pull Requests
Use apropriate template and don't forget about [DISCLAIMER](#DISCLAIMER)
- [Pull Request Template](pull_request_template.md)
- [Personal License Disclaimer Form](https://github.com/SafeSafe-app/pwa)

## DISCLAIMER
We require Digitally Signed Personal Agreement for Contributors collaborating on the project to accept their Pull Requests - it's Public Health so We need Public Trust thus introducing digital two-factor authentication for The Makers - also Apple doesn't go well with GNU so We make them do so manually by following these steps:
1. Remember SafeSafe-app software is being released on [GNU GENERAL PUBLIC LICENSE](https://github.com/SafeSafe-app/pwa/blob/master/LICENSE)
2. If You would like to contribute any changes to our project repositories You are the author and the owner of these changes, by the law of [GitHub Terms of Use](https://help.github.com/en/github/site-policy/github-terms-of-service#6-contributions-under-repository-license) You automatically grant license for these changes .
3. Mitigating any kind of misunderstanding around copyrights as well as lack of trust for unknown entities in public sector we ask that every Pull Request author verify aforementioned license grants for proposed changes through :
* [Downloading personal license disclaimer form](/DISCLAIMER.pdf) which states that the author:
* confirms GPL license grant for proposed changes
* permits everyone and anyone who agrees with the license statements to distribute this software freely in any form or format even in public software providers such as Apple's App Store, Google's Play Store, GitHub, etc.
* commits the author of changes not to execute his personal copyrights to dismiss them or their license for any reason
* Digitally signing the completed license statement form with compatible digital signature:
* [Trusted digital signature](https://www.gov.pl/web/gov/podpisz-dokument-elektronicznie-wykorzystaj-podpis-zaufany)
* [Qualified digital signature](https://pl.wikipedia.org/wiki/Podpis_kwalifikowany)
* [Personal digital signature](https://www.gov.pl/web/e-dowod/podpis-osobisty)
* Sending completed and signed license disclaimer form to [protego@mc.gov.pl](mailto:protego@mc.gov.pl) with:
* Title: `Oświadczenie GitHub`
* Note: Ministry of Digitalization will become your administrator of personal data submitted during process (Szczegóły przetwarzania danych przez każdą z jednostek znajdują się w ich politykach przetwarzania danych osobowych.)
4. After sending completed and signed license disclaimer form You will be added to [CONTRIBUTORS.md](/CONTRIBUTORS.md) file on the first merged Pull Request.
5. Then since We accept Pull Requests from new contributors only if they've already sent their completed and signed license disclaimer form thus are present on this list [CONTRIBUTORS.md](/CONTRIBUTORS.md) we should process Your future requests much, much faster. Thank You.
6. Last and at least we'd like You to know We're very sorry as We also wish there was a simpler way to do all this and promise to look for it in the future.
5 changes: 5 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/pull_request_template.md
@@ -0,0 +1,5 @@
Which issue(s) this PR fixes:

Fixes #

@gh-username
43 changes: 43 additions & 0 deletions .github/SECURITY.md
@@ -0,0 +1,43 @@
# Security Policies and Procedures

## Supported Versions

| Version | Supported |
| ------- | ------------------ |
| 2.0.1 | :white_check_mark: |
| 1.x.x | :white_check_mark: |

This document outlines Security Procedures and General Policies for this Project.

* [Reporting a Bug](#reporting-a-bug)
* [Disclosure Policy](#disclosure-policy)
* [Comments on this Policy](#comments-on-this-policy)

## Reporting a Bug

Report security bugs by emailing the lead maintainer at security@safesafe.app.

The lead maintainer will acknowledge your email within 48 hours, and will send a
more detailed response within 48 hours indicating the next steps in handling
your report. After the initial reply to your report, the security team will
endeavor to keep you informed of the progress towards a fix and full
announcement, and may ask for additional information or guidance.

Report security bugs in third-party software to the person or team maintaining
that software.

## Disclosure Policy

When the security team receives a security bug report, they will assign it to a
primary handler. This person will coordinate the fix and release process,
involving the following steps:

* Confirm the problem and determine the affected versions.
* Audit code to find any potential similar problems.
* Prepare fixes for all releases still under maintenance. These fixes will be
released as fast as possible to all distribution providers.

## Comments on this Policy

If you have suggestions on how this process could be improved please submit a
pull request.
25 changes: 25 additions & 0 deletions .github/SUPPORT.md
@@ -0,0 +1,25 @@
## Issues - Features, Bugs and Security:

Please create new Issues in apropriate repository only using the correct issue template type:
- [Features](ISSUE_TEMPLATE/feature_request.md)
- [Bugs](ISSUE_TEMPLATE/bug_report.md)
- [Security](SECURITY.md)

New GitHub issues may be automatically closed/deleted if not related or not compatible with the templates provided.

## New Issue templates:

If you would like to provide a new Issue template please create a [Pull Request](PULL_REQUEST_TEMPLATE/README.md) relating to at least one Issue.

## Community support
**Please do not use GitHub Issues for generic support questions or unreleated discussions. Instead please use Stack Overflow:**

- https://stackoverflow.com/questions/tagged/ios
- https://stackoverflow.com/questions/tagged/android
- https://stackoverflow.com/questions/tagged/chrome
- https://stackoverflow.com/questions/tagged/firefox
- https://stackoverflow.com/questions/tagged/ProteGO-Safe
- https://stackoverflow.com/questions/tagged/ProteGO-Safe-ios
- https://stackoverflow.com/questions/tagged/ProteGO-Safe-android
- https://stackoverflow.com/questions/tagged/ProteGO-Safe-web
- https://stackoverflow.com/questions/tagged/ProteGO-Safe-backend
79 changes: 9 additions & 70 deletions CONTRIBUTING.md
Expand Up @@ -2,78 +2,17 @@

Zapraszamy wszystkich do współpracy nad projektem:

1. [Zasady ogólne](Zasady-ogólne)
2. [Chcę zgłosić błąd w działaniu aplikacji.](#Chcę-zgłosić-błąd-w-działaniu-aplikacji)
3. [Chcę zgłosić błąd dotyczący bezpieczeństwa.](#Chcę-zgłosić-błąd-dotyczący-bezpieczeństwa)
1. [Zasady ogólne.](.github/CODE_OF_CONDUCT.md)
2. [Chcę zgłosić pomysł dotyczący aplikacji.](.github/SUPPORT.md)
3. [Chcę zgłosić błąd dotyczący bezpieczeństwa.](.github/SECURITY.md)
4. [Programuję, jak mogę pomóc?](#Programuję-jak-mogę-pomóc)
5. [Zajmuję się UX/UI, jak mogę pomóc?](#Zajmuję-się-uxui-jak-mogę-pomóc)
6. [Chcę pomóc testować nowe wersje aplikacji.](#Chcę-pomóc-testować-nowe-wersje-aplikacji)
7. [Chcę zaproponować nową funkcjonalność.](#Chcę-zaproponować-nową-funkcjonalność)
8. [Jak jeszcze mogę pomóc?](#Jak-jeszcze-moge-pomoc)

## Zasady ogólne

### Język komunikacji

Komunikujemy się po polsku, ponieważ jednym z głównych celów tego projektu jest zbudowanie zaufania do użytkowników aplikacji ProteGO, którymi będą głównie osoby mówiące po polsku. Wiele tematów które poruszamy na GitHub jest czytelnych dla osób nietechnicznych. Nie chcemy zabierać im możliwości partycypacji. Komunikacja po angielsku jest OK, odpowiadamy wtedy po angielsku.

Kod i komentarze w kodzie piszemy po angielsku. Commity po polsku lub angielsku.

### Kto podejmuje decyzje w tym projekcie?

ProteGO ma jedynie sens jeśli zostanie stworzone we współpracy z administracją. Potrzebujemy połączenia z zaufanym źródłem informacji dotyczącym tego czy ktoś został zakażony SARS-CoV-2. Taki rejestr jest prowadzony przez stronę rządową. Ministerstwo Cyfryzacji (MC) zdecydowało się wydać i promować tę aplikację. Oznacza to jednak również to, że ostatecznie to MC decyduje o tym czy aplikacja i jej kolejne wersje będą wydane. Potrzebujemy więc współpracy i dialogu, który połączy potrzeby i obawy każdej ze stron. **Aktualnie** łącznikiem między MC i projektem jest Mateusz Romanów [@MateuszRomanow](https://github.com/MateuszRomanow).

### Jaki jest "roadmap" projektu?

Poza wydaniem wersji `1.0` opisanej [tutaj](https://github.com/ProteGO-app/specs/blob/master/specs/README.md) nie ma jeszcze decyzji co dalej. Na pewno będziemy chcieli zachęcić użytkowników do częstszego zaglądania do aplikacji? Masz pomysł jak to zrobić - napisz.

### Jaki mamy "branching strategy"?

Mamy `mastera` i dla każdej nowej funkcjonalności/usprawnienia/poprawki błędu robimy `brancha`. Jeśli jest gotowy to `mergowany` jest bezpośrednio do `mastera`. Gdy zbliżymy się do wejścia na produkcję lub będziemy prowadzili rozbudowane testy z użytkownikami wtedy mamy plan przejść na [git flow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow). Dzięki temu będziemy mieli możliwość zamrażania wersji do wydania, wprowadzania `hotfixów` przy utrzymaniu intensywnego rozwoju nowych funkcjonalności.

## Chcę zgłosić błąd w działaniu aplikacji

Używamy `GitHub issues` do śledzenia postępów i błędów. Wypełnij formularz błędu w [aplikacji iOS](https://github.com/anna-app/ios/issues/new?assignees=&labels=&template=bug_report.md&title=), w [aplikacji Android](https://github.com/anna-app/android/issues/new?assignees=&labels=&template=bug_report.md&title=) lub [na serwerze](https://github.com/anna-app/backend/issues/new?assignees=&labels=&template=bug_report.md&title=). Pamiętaj o podaniu wszystkich wymaganych informacji. Zanim zgłosisz coś nowego, sprawdź czy nie ma już wcześniejszego podobnego zgłoszenia.

## Chcę zgłosić błąd dotyczący bezpieczeństwa

Zanim zgłosisz błąd dotyczący bezpieczeństwa aplikacji sprawdź naszą [listę znanych zagadnień dotyczących bezpieczeństwa](specs/security.md). Jeśli chcesz zgłosić coś nowego i jest to krytyczne skontaktuj się z nami bezpośrednio. W przeciwnym wypadku zgłoś błąd przez [`GitHub issues`](#Chcę-zgłosić-błąd-w-działaniu-aplikacji)

## Programuję, jak mogę pomóc?

Jest mnóstwo sposobów w jaki możesz nam pomóc:
* Zrób nam audyt kodu.
* Przeglądnij listę zadań nad którymi pracujemy.
* Dodaj swój `Pull Request`.
* Przeglądnij istniejące `Pull Request`y.
Komunikuj się z nami przez GitHub.

### Oświadczenie o udzieleniu licencji
Abyśmy mogli akceptować Twoje Pull Request'y zapoznaj się z zasadami poniżej:
1. ProteGO tworzone jest na licencjach Affero GPL (backend) i GPL (pozostałe komponenty)
2. Jeśli dodajesz jakąś zmianę do któregoś repozytorium **pozostajesz jej autorem i właścicielem**, a na mocy *GitHub Terms of Use* automatycznie [udzielasz licencji na swoje zmiany](https://help.github.com/en/github/site-policy/github-terms-of-service#6-contributions-under-repository-license).
3. Dla uniknięcia nieporozumień prosimy każdego twórcę Pull Request'a o potwierdzenie udzielenia licencji na swoje zmiany poprzez:
* pobranie i wypełnienie [oświadczenia](files/oswiadczenie_licencja_GPL_AGPL.pdf), które:
* potwierdza udzielenie licencji GPL/AGPL na swoje zmiany
* zezwala każdemu kto stosuje się do postanowień licencji na dystrybucję binarnych plików przez App Store firmy Apple
* zobowiązuje autora zmian do niewykonywania swoich osobistych praw autorskich i do nieodwoływania swojej licencji
* podpisanie go [podpisem zaufanym](https://www.gov.pl/web/gov/podpisz-dokument-elektronicznie-wykorzystaj-podpis-zaufany), [podpisem osobistym](https://www.gov.pl/web/e-dowod/podpis-osobisty) lub [podpisem kwalifikowanym](https://pl.wikipedia.org/wiki/Podpis_kwalifikowany)
* przesłanie podpisanego dokumentu na adres [protego@mc.gov.pl](mailto:protego@mc.gov.pl). Jako tytuł wiadomości wpisz `Oświadczenie GitHub`. Administratorem Twoich danych osobowych jest Ministerstwo Cyfryzacji.
4. Po podpisaniu i przesłaniu dokumentu, wraz z pierwszym Pull Request'em dodamy Cię do pliku [CONTRIBUTORS.md](CONTRIBUTORS.md). Dzięki temu każdy Twój kolejny Pull Request zostanie zaakceptowany szybciej.
5. Przyjmujemy Pull Request'y tylko od osób, które przesłały oświadczenie.

## Zajmuję się UX/UI, jak mogę pomóc?

Udostępniamy [pliki źródłowe dotyczące UX i UI](https://drive.google.com/drive/folders/1n2-dFkdkJWnezX3RjN1kaSOzHQiUg4iQ?usp=sharing). Jeśli chcesz coś zaproponować jakieś zmiany zgłoś je [tutaj](https://github.com/ProteGO-app/specs/issues)

## Chcę pomóc testować nowe wersje aplikacji

Instrukcja dotycząca tego jak dołączyć do zespołu testerów znajduje się [tutaj](specs/testing.md).

## Chcę zaproponować nową funkcjonalność.

Nowe funkcjonalności planujemy w [GitHub issues](https://github.com/anna-app/specs/issues). Sprawdź wcześniej czy ktoś nie zgłosił czegoś podobnego.

## Jak jeszcze mogę pomóc?

Używaj aplikacji, promuj wśród znajomych, zainstaluj rodzicom. Śledź nas na profilach społecznościowych.
* Rób razem z nami audyt kodu.
* Dodawaj swoje `Pull Request`y.
* Przeglądaj istniejące `Pull Request`y.
* Pomagaj innym użytkownikom.
Komunikuj się z nami przez GitHub i Stackoverflow.
Więcej informacji w temacie komunikacji znajdziesz [tutaj](.github/SUPPORT.md)
1 change: 0 additions & 1 deletion CONTRIBUTORS.md
Expand Up @@ -14,7 +14,6 @@ Mikołaj Lewandowski | [mikolevy](https://github.com/mikolevy) |
Bartosz Paszcza | [bpaszcza](https://github.com/bpaszcza) | specs
Wojciech Dziwulski | [wojdziw](https://github.com/wojdziw) | specs
Wojciech Szkutnik | [wojtekszkutnik](https://github.com/wojtekszkutnik) | specs
Szymon Teżewski | [jasisz](https://github.com/jasisz) | backend, specs
Michał Kuchtar | [michalkuchtar](https://github.com/michalkuchtar) | android
Tomasz Heimowski | [theimowski](https://github.com/theimowski) | android
Adam Kozłowski | [vetin4ri](https://github.com/vetin4ri) | backend
Expand Down
Binary file added DISCLAIMER.pdf
Binary file not shown.