From 33ec2b6aaf5f8e3651328e641ada0d159b021f8c Mon Sep 17 00:00:00 2001 From: Daphne Gold Date: Wed, 1 Nov 2023 11:37:25 -0700 Subject: [PATCH] [ISSUE 549] Update terraform to support move to simpler.grants.gov (#608) --- .github/ISSUE_TEMPLATE/adr.yml | 2 +- .github/ISSUE_TEMPLATE/milestone.yml | 2 +- COMMUNITY_GUIDELINES.md | 38 +- CONTRIBUTING.md | 20 +- DEVELOPMENT.md | 42 +- README.md | 4 +- analytics/README.md | 18 +- analytics/data/sprint-data.json | 3410 ++++++++++++++++- analytics/pyproject.toml | 10 +- analytics/reporting.ipynb | 4 +- analytics/src/analytics/etl/github.py | 2 +- api/Dockerfile | 2 +- api/openapi.generated.yml | 4 +- api/pyproject.toml | 4 +- api/src/app.py | 4 +- documentation/README.md | 6 +- documentation/architecture/README.md | 14 +- documentation/decisions/README.md | 15 +- ...-06-26-recording-architecture-decisions.md | 2 +- .../adr/2023-06-29-ci-cd-task-runner.md | 3 +- .../decisions/adr/2023-06-30-api-language.md | 11 +- .../adr/2023-07-03-design-prototyping-tool.md | 4 +- .../decisions/adr/2023-07-05-chat-adr.md | 101 +- .../decisions/adr/2023-07-05-db-choices.md | 12 +- .../decisions/adr/2023-07-07-api-framework.md | 14 +- .../adr/2023-07-07-backend-tooling.md | 8 +- .../adr/2023-07-10-front-end-language.md | 4 +- .../decisions/adr/2023-07-10-wiki-platform.md | 58 +- .../adr/2023-07-11-design-diagramming-tool.md | 4 +- .../adr/2023-07-11-ticket-tracking.md | 32 +- .../adr/2023-07-14-front-end-framework.md | 4 +- .../adr/2023-07-17-frontend-tooling.md | 10 +- .../adr/2023-07-18-frontend-testing.md | 10 +- .../adr/2023-07-19-backend-api-type.md | 10 +- .../adr/2023-07-19-backend-testing.md | 11 +- .../adr/2023-07-20-deployment-strategy.md | 3 +- .../adr/2023-07-24-video-conferencing.md | 115 +- .../adr/2023-07-26-backend-prod-server.md | 7 +- .../adr/2023-08-01-analytics-platform.md | 57 +- ...2023-08-21-branch-conv-release-workflow.md | 25 +- .../adr/2023-08-21-cloud-platform.md | 23 +- .../adr/2023-09-07-data-replication-tool.md | 12 +- .../adr/2023-09-22-hhs-comms-site.md | 19 +- .../decisions/adr/2023-10-16-Listserv | 34 +- documentation/decisions/template.md | 2 +- .../individual_milestones/api_planning.md | 51 +- .../communication_platforms.md | 66 +- .../individual_milestones/db_planning.md | 54 +- .../individual_milestones/developer_tools.md | 39 +- .../frontend_planning.md | 53 +- .../get_opportunities.md | 112 +- .../individual_milestones/static_site.md | 87 +- frontend/src/constants/routes.ts | 6 +- infra/README.md | 2 +- .../grants-equity.315341936575.s3.tfbackend | 4 - ...mpler-grants-gov.315341936575.s3.tfbackend | 4 + infra/api/app-config/main.tf | 6 +- .../api/build-repository/.terraform.lock.hcl | 19 + .../api/build-repository/shared.s3.tfbackend | 4 +- infra/api/database/dev.s3.tfbackend | 4 +- infra/api/database/prod.s3.tfbackend | 4 +- infra/api/service/dev.s3.tfbackend | 4 +- infra/api/service/prod.s3.tfbackend | 4 +- infra/frontend/app-config/main.tf | 6 +- .../build-repository/.terraform.lock.hcl | 19 + .../build-repository/shared.s3.tfbackend | 4 +- infra/frontend/service/dev.s3.tfbackend | 4 +- infra/frontend/service/prod.s3.tfbackend | 4 +- infra/networks/default.s3.tfbackend | 4 +- infra/project-config/main.tf | 4 +- 70 files changed, 4146 insertions(+), 618 deletions(-) delete mode 100644 infra/accounts/grants-equity.315341936575.s3.tfbackend create mode 100644 infra/accounts/simpler-grants-gov.315341936575.s3.tfbackend diff --git a/.github/ISSUE_TEMPLATE/adr.yml b/.github/ISSUE_TEMPLATE/adr.yml index 57f5b0303..01eb3262e 100644 --- a/.github/ISSUE_TEMPLATE/adr.yml +++ b/.github/ISSUE_TEMPLATE/adr.yml @@ -12,7 +12,7 @@ body: - type: markdown attributes: value: | - **Example** [Wiki ADR](https://github.com/HHS/grants-equity/issues/30) + **Example** [Wiki ADR](https://github.com/HHS/simpler-grants-gov/issues/30) - type: textarea id: description attributes: diff --git a/.github/ISSUE_TEMPLATE/milestone.yml b/.github/ISSUE_TEMPLATE/milestone.yml index 2ddc76c4b..43d7e4525 100644 --- a/.github/ISSUE_TEMPLATE/milestone.yml +++ b/.github/ISSUE_TEMPLATE/milestone.yml @@ -12,7 +12,7 @@ body: - type: markdown attributes: value: | - **Example:** [DB & API Planning](https://github.com/HHS/grants-equity/issues/21) + **Example:** [DB & API Planning](https://github.com/HHS/simpler-grants-gov/issues/21) - type: textarea id: description attributes: diff --git a/COMMUNITY_GUIDELINES.md b/COMMUNITY_GUIDELINES.md index 70f46779b..7922f8ca2 100644 --- a/COMMUNITY_GUIDELINES.md +++ b/COMMUNITY_GUIDELINES.md @@ -6,31 +6,31 @@ We know that we can learn from a wide variety of communities, including those wh We also recognize capacity building as a key part of involving a diverse open source community. We are doing our best to use accessible language, provide technical and process documents in multiple languages, and offer support to community members with a wide variety of backgrounds and skillsets. If you have ideas for how we can improve or add to our capacity building efforts and methods for welcoming people into our community, please let us know by filing an issue on our GitHub repository. -## Principles +## Principles -Principles and guidelines for participating in our open source community are linked belowhere. Please read them before joining or starting a conversation in this repo or one of the channels listed below. All community members and participants are expected to adhere to the community guidelines and code of conduct when participating in community spaces including: code repositories, communication channels and venues, and events. +Principles and guidelines for participating in our open source community are linked belowhere. Please read them before joining or starting a conversation in this repo or one of the channels listed below. All community members and participants are expected to adhere to the community guidelines and code of conduct when participating in community spaces including: code repositories, communication channels and venues, and events. These principles guide our data, product, and process decisions, architecture, and approach. These guidelines are inspired by the [Justice40 Community Guidelines](https://github.com/usds/justice40-tool/blob/main/COMMUNITY_GUIDELINES.md). -* Open means transparent and participatory. -* We take a modular and modern approach to software development. -* We build open-source software and open-source processes. -* We value ease of implementation. -* Fostering community includes building capacity and making our software and processes accessible to participants with diverse backgrounds and skillsets. -* Data (and data science) is as important as software and process. We build open data sets where possible. -* We strive for transparency for algorithms and places we might be introducing bias. +- Open means transparent and participatory. +- We take a modular and modern approach to software development. +- We build open-source software and open-source processes. +- We value ease of implementation. +- Fostering community includes building capacity and making our software and processes accessible to participants with diverse backgrounds and skillsets. +- Data (and data science) is as important as software and process. We build open data sets where possible. +- We strive for transparency for algorithms and places we might be introducing bias. All community members are expected to adhere to our [Code of Conduct](CODE_OF_CONDUCT.md). ## Community Guidelines -* When participating in the Grants Equity open source community conversations and spaces, we ask individuals to follow the following guidelines: -* When joining a conversation for the first time, please introduce yourself by providing a brief intro that includes: - * your related organization (if applicable) - * your pronouns, if you would like to share those - * disclosure of any current or potential financial interest in this work - * your superpower, and how you hope to use it for this project -* Embrace a culture of learning, and educate each other. We are all entering this conversation from different starting points and with different backgrounds. There are no dumb questions. -* Take space and give space. We strive to create an equitable environment in which all are welcome and able to participate. We hope individuals feel comfortable voicing their opinions and providing contributions and will do our best to recognize and make space for individuals who may be struggling to find space here. Likewise, we expect individuals to recognize when they are taking up significant space and take a step back to allow room for others. -* Be present when joining synchronous conversations such as our community chat. Why be here if you're not going to be here? -* Be respectful. +- When participating in the Simpler Grants open source community conversations and spaces, we ask individuals to follow the following guidelines: +- When joining a conversation for the first time, please introduce yourself by providing a brief intro that includes: + - your related organization (if applicable) + - your pronouns, if you would like to share those + - disclosure of any current or potential financial interest in this work + - your superpower, and how you hope to use it for this project +- Embrace a culture of learning, and educate each other. We are all entering this conversation from different starting points and with different backgrounds. There are no dumb questions. +- Take space and give space. We strive to create an equitable environment in which all are welcome and able to participate. We hope individuals feel comfortable voicing their opinions and providing contributions and will do our best to recognize and make space for individuals who may be struggling to find space here. Likewise, we expect individuals to recognize when they are taking up significant space and take a step back to allow room for others. +- Be present when joining synchronous conversations such as our community chat. Why be here if you're not going to be here? +- Be respectful. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a8f5b88c2..622e2b2c7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -16,11 +16,11 @@ There are a number of ways to contribute to this project. ### Report a Bug -If you think you have found a bug in the code or static site, [search our issues list](https://github.com/HHS/grants-equity/issues) on GitHub for any similar bugs. If you find a similar bug, please update that issue with your details. +If you think you have found a bug in the code or static site, [search our issues list](https://github.com/HHS/simpler-grants-gov/issues) on GitHub for any similar bugs. If you find a similar bug, please update that issue with your details. If you do not find your bug in our issues list, file a bug report. When reporting the bug, please follow these guidelines: -- **Please use the [Bug Report](https://github.com/HHS/grants-equity/issues/new?assignees=octocat&labels=bug&projects=&template=bug_report.yml&title=%5BBug%5D%3A+) issue template** This is populated with information and questions that will help grants.gov developers resolve the issuethe right information +- **Please use the [Bug Report](https://github.com/HHS/simpler-grants-gov/issues/new?assignees=octocat&labels=bug&projects=&template=bug_report.yml&title=%5BBug%5D%3A+) issue template** This is populated with information and questions that will help grants.gov developers resolve the issuethe right information - **Use a clear and descriptive issue title** for the issue to identify the problem. - **Describe the exact steps to reproduce the problem** in as much detail as possible. For example, start by explaining how you got to the page where you encountered the bug and what you were attempting to do when the bug occurred. - **Describe the behavior you observed after following the steps** and point out what exactly is the problem with that behavior. @@ -32,7 +32,7 @@ If you do not find your bug in our issues list, file a bug report. When reportin If you don't have specific language or code to submit but would like to suggest a change, request a feature, or have something addressed, you can open an issue in this repository. -Please open an issue of type [Feature request](https://github.com/HHS/grants-equity/issues/new?assignees=octocat&labels=enhancement&projects=&template=feature_request.yml&title=%5BFeature+Request%5D%3A+): +Please open an issue of type [Feature request](https://github.com/HHS/simpler-grants-gov/issues/new?assignees=octocat&labels=enhancement&projects=&template=feature_request.yml&title=%5BFeature+Request%5D%3A+): In this issue, please describe the use case for the feature you would like to see -, what you need, why you need it, and how it should work. Team members will respond to the Feature request as soon as possible. Often, Feature request suggestions undergo a collaborative discussion with the community to help refine the need for the feature and how it can be implemented. @@ -46,9 +46,9 @@ To contribute to documentation you find in this repository, feel free to use the > 🚧 Tools and expanding avenues for community engagement are coming soon. -### Sharing your story +### Sharing your story -Sharing how you or your organization have used the Grants Equity project is an important way for us to raise awareness about the project and its impact. Please tell us your story by [sending us an email at `grants-equity@hhs.gov`](mailto:grants-equity@hhs.gov). +Sharing how you or your organization have used the Simpler Grants project is an important way for us to raise awareness about the project and its impact. Please tell us your story by [sending us an email at `simpler-grants-gov@hhs.gov`](mailto:simpler-grants-gov@hhs.gov). ## Code Contributions @@ -66,9 +66,9 @@ This project follows [trunk-based development](./DEVELOPMENT.md#branching-model) 1. Check out the `main` branch 1. Create a feature branch 1. Write code and tests for your change -1. From your branch, make a pull request against `hhs/grants-equity/main` +1. From your branch, make a pull request against `hhs/simpler-grants-gov/main` 1. Work with repo maintainers to get your change reviewed -1. Wait for your change to be pulled into `hhs/grants-equity/main` +1. Wait for your change to be pulled into `hhs/simpler-grants-gov/main` 1. Delete your feature branch ### Testing, Coding Style and Linters @@ -77,7 +77,7 @@ Each application has its own testing and linters. Every commit is tested to adhe ### Issues -External contributors should use the *Bug Report* or *Feature Request* [issue templates](https://github.com/HHS/grants-equity/issues/new/choose). +External contributors should use the _Bug Report_ or _Feature Request_ [issue templates](https://github.com/HHS/simpler-grants-gov/issues/new/choose). ### Pull Requests @@ -97,12 +97,12 @@ We adhere to the [HHS Open Source Policy](https://github.com/CMSGov/cms-open-sou The Department of Health and Human Services is committed to ensuring the security of the American public by protecting their information from unwarranted disclosure. We want security researchers to feel comfortable reporting vulnerabilities they have discovered so we can fix them and keep our users safe. We developed our disclosure policy to reflect our values and uphold our sense of responsibility to security researchers who share their expertise with us in good faith. -*Submit a vulnerability:* Unfortunately, we cannot accept secure submissions via email or via GitHub Issues. Please use our website to submit vulnerabilities at [https://hhs.responsibledisclosure.com](https://hhs.responsibledisclosure.com). HHS maintains an acknowledgements page to recognize your efforts on behalf of the American public, but you are also welcome to submit anonymously. +_Submit a vulnerability:_ Unfortunately, we cannot accept secure submissions via email or via GitHub Issues. Please use our website to submit vulnerabilities at [https://hhs.responsibledisclosure.com](https://hhs.responsibledisclosure.com). HHS maintains an acknowledgements page to recognize your efforts on behalf of the American public, but you are also welcome to submit anonymously. Review the HHS Disclosure Policy and websites in scope: [https://www.hhs.gov/vulnerability-disclosure-policy/index.html](https://www.hhs.gov/vulnerability-disclosure-policy/index.html). -This policy describes *what systems and types of research* are covered under this policy, *how to send* us vulnerability reports, and *how long* we ask security researchers to wait before publicly disclosing vulnerabilities. +This policy describes _what systems and types of research_ are covered under this policy, _how to send_ us vulnerability reports, and _how long_ we ask security researchers to wait before publicly disclosing vulnerabilities. If you have other cybersecurity related questions, please contact us at [csirc@hhs.gov](mailto:csirc@hhs.gov). diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index 08e598b35..43ada7d48 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -1,6 +1,6 @@ -# Development and Software Delivery Lifecycle +# Development and Software Delivery Lifecycle The following guide is for members of the project team who have access to the repository as well as code contributors. The main difference between internal and external contributions is that externabl contributors will need to fork the project and will not be able to merge their own pull requests. For more information on contribributing, see: [CONTRIBUTING.md](./CONTRIBUTING.md). @@ -16,11 +16,11 @@ Each application has its own linting and testing guidelines. Lint and code tests This project follows [trunk-based development](https://trunkbaseddevelopment.com/), which means: -* Make small changes in [short-lived feature branches](https://trunkbaseddevelopment.com/short-lived-feature-branches/) and merge to `main` frequently. -* Be open to submitting multiple small pull requests for a single ticket (i.e. reference the same ticket across multiple pull requests). -* Treat each change you merge to `main` as immediately deployable to production. Do not merge changes that depend on subsequent changes you plan to make, even if you plan to make those changes shortly. -* Ticket any unfinished or partially finished work. -* Tests should be written for changes introduced, and adhere to the text percentage threshold determined by the project. +- Make small changes in [short-lived feature branches](https://trunkbaseddevelopment.com/short-lived-feature-branches/) and merge to `main` frequently. +- Be open to submitting multiple small pull requests for a single ticket (i.e. reference the same ticket across multiple pull requests). +- Treat each change you merge to `main` as immediately deployable to production. Do not merge changes that depend on subsequent changes you plan to make, even if you plan to make those changes shortly. +- Ticket any unfinished or partially finished work. +- Tests should be written for changes introduced, and adhere to the text percentage threshold determined by the project. This project uses **continuous deployment** using [Github Actions](https://github.com/features/actions) which is configured in the [./github/worfklows](.github/workflows) directory. @@ -69,26 +69,26 @@ All changes, including small ones, should have an issue. If they don't `[Hotfix] This project takes a very collaborative and [agile](https://agilemanifesto.org/) approach to code reviews. Working versions of code, self-organizing, and individuals are prioritized When reviewing pull requests: -* **Be prompt**. Aim to respond to a review within 24 hours (although sooner is preferable), and if you cannot do so, be sure to communicate delays to the code author. -* **Be kind and respectful** when leaving comments and maintain a collaborative tone. Don’t use language that disparages or embarrasses the author (name calling, insults to intelligence, etc). Direct any negative feedback towards the code rather than towards the author. -* **Present suggestions as requests rather than demands**; instead of “Move this function to file B” try “Would this function fit better in file B?” This allows the author to push back on the suggestion by answering a question rather than rejecting a demand, which helps keep things from getting combative. -* **Praise and compliment** the good parts! -* **Explain suggestions and recommendations**. These should be opportunities for learning/mentoring, not for criticism or giving orders. -* **Offer to chat in person** for more complex discussions, or to ensure understanding of new logic. -* **Review the testing** as well as the code. You may think of edge cases or other things that the author’s testing plan might have missed. -* **Clearly designate between required and optional changes**. This can take many forms, but as examples: “(optional) We might want to rename this variable to avoid confusion” and “(blocking) We don’t properly handle deadlocks here, so we’ll need to fix that.” It may also be helpful to clearly designate praises, questions, nits, etc to make a comment’s intention very clear. -* Consider using **[conventional comments](https://conventionalcomments.org/)** for messages. -* Use the **"Add a suggestion"** feature to suggest small changes in PRs. - -![add a suggestion pop-up](https://github.com/HHS/grants-equity/assets/512243/e08efbd3-91de-43ce-a0d5-4529ccb1ac13) - -* **The "Request Changes"** feature *requires* the reviewer approve changes. This takes autonomy from the engineer, and should only be used if there is an urgent need. +- **Be prompt**. Aim to respond to a review within 24 hours (although sooner is preferable), and if you cannot do so, be sure to communicate delays to the code author. +- **Be kind and respectful** when leaving comments and maintain a collaborative tone. Don’t use language that disparages or embarrasses the author (name calling, insults to intelligence, etc). Direct any negative feedback towards the code rather than towards the author. +- **Present suggestions as requests rather than demands**; instead of “Move this function to file B” try “Would this function fit better in file B?” This allows the author to push back on the suggestion by answering a question rather than rejecting a demand, which helps keep things from getting combative. +- **Praise and compliment** the good parts! +- **Explain suggestions and recommendations**. These should be opportunities for learning/mentoring, not for criticism or giving orders. +- **Offer to chat in person** for more complex discussions, or to ensure understanding of new logic. +- **Review the testing** as well as the code. You may think of edge cases or other things that the author’s testing plan might have missed. +- **Clearly designate between required and optional changes**. This can take many forms, but as examples: “(optional) We might want to rename this variable to avoid confusion” and “(blocking) We don’t properly handle deadlocks here, so we’ll need to fix that.” It may also be helpful to clearly designate praises, questions, nits, etc to make a comment’s intention very clear. +- Consider using **[conventional comments](https://conventionalcomments.org/)** for messages. +- Use the **"Add a suggestion"** feature to suggest small changes in PRs. + +![add a suggestion pop-up](https://github.com/HHS/simpler-grants-gov/assets/512243/e08efbd3-91de-43ce-a0d5-4529ccb1ac13) + +- **The "Request Changes"** feature _requires_ the reviewer approve changes. This takes autonomy from the engineer, and should only be used if there is an urgent need. ## Releases Releases follow the [CalVer](https://calver.org/) versioning using a `YYY.MM.DD` format. Optionally include a `-N` if more than one releases are published in the same day. -Releases should be [created in Github](https://github.com/HHS/grants-equity/releases) and include a log of changes. +Releases should be [created in Github](https://github.com/HHS/simpler-grants-gov/releases) and include a log of changes. ## Documentation diff --git a/README.md b/README.md index 0f82d5a03..4e730f82e 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ See [goals.md](./documentation/goals.md) for more information about the vision a The core team on the grants.gov project is a small group of content strategists, designers, developers, and product managers working for and with the Department of Health and Human Services, and other federal agencies, and community volunteers. -An up-to-date list of core team members can be found in [MAINTAINERS.md](./MAINTAINERS.md). At this time, the project is still building the core team and defining roles and responsibilities. We are eagerly seeking individuals who would like to join the community and help us define and fill these roles. +An up-to-date list of core team members can be found in [MAINTAINERS.md](./MAINTAINERS.md). At this time, the project is still building the core team and defining roles and responsibilities. We are eagerly seeking individuals who would like to join the community and help us define and fill these roles. ## Repository Structure @@ -52,7 +52,7 @@ Disclosure Policies, see [SECURITY.md](SECURITY.md). For more information about our Authors and maintainers, see [MAINTAINERS.md](MAINTAINERS.md). -A full list of [contributors](https://github.com/HHS/grants-equity/graphs/contributors) can be found on GitHub. +A full list of [contributors](https://github.com/HHS/simpler-grants-gov/graphs/contributors) can be found on GitHub. ## Public domain diff --git a/analytics/README.md b/analytics/README.md index 7b0de5962..07aadadcc 100644 --- a/analytics/README.md +++ b/analytics/README.md @@ -1,6 +1,6 @@ -# Grants Equity Analytics +# Simpler Grants Analytics -This sub-directory enables users to run analytics on data generated within the Grants Equity project. +This sub-directory enables users to run analytics on data generated within the Simpler Grants project. ## Getting Started @@ -20,14 +20,14 @@ gh --version ### Installation -1. Clone the GitHub repo: `git clone https://github.com/HHS/grants-equity.git` -2. Change directory into the analytics folder: `cd grants-equity/analytics` +1. Clone the GitHub repo: `git clone https://github.com/HHS/simpler-grants-gov.git` +2. Change directory into the analytics folder: `cd simpler-grants-gov/analytics` 3. Check that you have the pre-requisites installed: - ``` - python --version - poetry --version - gh --version - ``` + ``` + python --version + poetry --version + gh --version + ``` 4. Set up the project: `make setup` -- This will install the required packages and prompt you to authenticate with GitHub ## Calculating Analytics diff --git a/analytics/data/sprint-data.json b/analytics/data/sprint-data.json index 6f3ba8052..8de9160f0 100644 --- a/analytics/data/sprint-data.json +++ b/analytics/data/sprint-data.json @@ -1 +1,3409 @@ -{"items":[{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup]\r\n\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the indentifier of the content. \r\n![image](https://github.com/HHS/grants-equity/assets/111455374/d2f78039-ca4d-4f6e-8e59-ee72e3f85efa)\r\n\r\n\r\n- Add the approved identifier content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n* About HHS: https://www.hhs.gov/about/index.html\r\n* Accessibility support: https://www.grants.gov/web/grants/accessibility-compliance.html\r\n* FOIA requests: https://www.hhs.gov/foia/index.html\r\n* No FEAR Act data: https://www.eeoc.gov/\r\n* Officer of the Inspector General: https://oig.hhs.gov/\r\n* Performance reports: https://www.hhs.gov/about/budget/index.html\r\n* Privacy Policy: https://www.grants.gov/web/grants/privacy.html\r\n* Visit USA.gov: https://www.usa.gov/ \r\n\r\n\r\n### Dependencies\r\n#283 \r\n\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Identifier is working and match the Figma design\r\n- [ ] Appears as a story in Storybook\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)","title":"[Task]: Implement identifier section to static site","number":357,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/357"},"id":"PVTI_lADOABZxns4ASDf3zgILZOU","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/398"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Implement identifier section to static site"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\n\nWe will use Terraform and Github Actions to spin up infrastructure for the front-end on AWS.\n\nSet up dev + prod environments on same account. Either front-end or back-end, whichever comes first, will also be responsible for setting up higher level infra.\n\nRelated to #189 \nBlocked by #188 \nUnblocks to #285 \n\n### Acceptance criteria\n\n- [ ] Follow `template-infra` conventions to build and deploy architecture to AWS\n- [ ] Redeploys on changes to `/frontend` via Github Actions\n- [ ] Test/verify via AWS console","title":"[Task]: Set up front-end infrastructure in AWS","number":299,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/299"},"id":"PVTI_lADOABZxns4ASDf3zgICZR0","labels":["topic: frontend","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/381"],"milestone":{"title":"[Epic] Infrastructure-as-Code","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Set up front-end infrastructure in AWS"},{"content":{"type":"Issue","body":"- [ ] Provision and maintain AWS resources via Terraform IaC\n- [ ] Configure AWS services (VPC, IAM, load balancers, security groups, Aurora RDS, Fargate, etc)\n- [ ] Provision and manage external resources that interact with AWS (Github Actions CI/CD pipeline)\n- [ ] Obtain domain name\n- [ ] Configure, update, verify DNS settings\n- [ ] Test and verify access\n\nUsers that will need access: @acouch, @daphnegold, @gcarson-bit, @SammySteiner (anyone I missed working on infra?)","title":"AWS Access","number":139,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/139"},"id":"PVTI_lADOABZxns4ASDf3zgHyYHw","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"FY23 Q4: Open source group kickoff","description":"","dueOn":"2023-09-27T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"AWS Access"},{"assignees":["andycochran"],"content":{"type":"Issue","body":"### Summary\r\n\r\nUpdate the content with the [following changes](https://docs.google.com/document/d/1BhU1L3hpkm7svX5p2mGir-TwUkm6o4o6/edit?usp=sharing\u0026ouid=104152432676616108761\u0026rtpof=true\u0026sd=true): \r\n\r\n![image](https://github.com/HHS/grants-equity/assets/409279/6cba3019-b88c-40ea-a61a-dff0e4ca1609)\r\n\r\n![image](https://github.com/HHS/grants-equity/assets/409279/9bbcf764-42fe-44b4-abef-8f7b59589e4b)\r\n\r\n![image](https://github.com/HHS/grants-equity/assets/409279/38644c51-b5b7-48bf-9207-10282e30a905)\r\n\r\n![image](https://github.com/HHS/grants-equity/assets/409279/f913ed06-c293-4555-a036-5d8d2b664da6)\r\n\r\n\r\n### Acceptance criteria\r\n\r\nAll text matches the approve content. ","title":"[Task]: update content strings per approved copy","number":396,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/396"},"id":"PVTI_lADOABZxns4ASDf3zgIt2P4","labels":["enhancement","topic: frontend"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/405"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: update content strings per approved copy"},{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"### Summary\n\nBlocked by #472 \n- Set up DNS hosting service to manage DNS settings or identify who manages DNS for grants.gov\n- Update DNS to point to domain \n- Configure any necessary subdomains \n\n### Acceptance criteria\n\n- [ ] DNS settings are updated and the domain successfully resolves to correct address\n- [ ] Website is accessible at beta.grants.gov\n- [ ] Relevant documentation is provided for DNS configuration\n\n### Notes\n","title":"[Task]: Network DNS entry","number":295,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/295"},"id":"PVTI_lADOABZxns4ASDf3zgICHzE","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"[Epic]: beta.grants.gov domain","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Blocked","title":"[Task]: Network DNS entry"},{"assignees":["andycochran"],"content":{"type":"Issue","body":"### Summary\n\n- Make the footer layout look nicer on mobile\r\n- Size the tiny logo more appropriately\r\n- Consider removing the repetitive text next to the logo \r\n - rely on logo's alt text instead\r\n - confirm USWDS guidance \r\n- Improve the layout of Social links to not awkwardly wrap on small screen\r\n - reconsider their order (perhaps GitHub is more appropriate last?) \n\n### Acceptance criteria\n\n- Footer looks nicer on small screen\r\n- Footer logo is legible\r\n- Social links don't wrap to multiple lines ","title":"[Task]: Improve Footer's responsive layout ","number":448,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/448"},"id":"PVTI_lADOABZxns4ASDf3zgI6T2A","labels":["enhancement"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/451"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","story Points":2,"title":"[Task]: Improve Footer's responsive layout "},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\r\n\r\nCI vulnerability checks are extremely slow because each scan is building a new docker image, leading to 6+ minutes to run scans. Sharing a docker image between jobs would alleviate this and only need one build.\r\n\r\nOptions to investigate:\r\n- actions/cache (very fast)\r\n- artifact upload and download (slow)\r\n- ECR push and pull (slow)\r\n\r\nConsider migrating back to Platform\r\n\r\n### Acceptance criteria\r\n\r\n- Update vulnerability checks to share docker image, hopefully quickly","title":"[Task]: Fix vulnerability checks","number":435,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/435"},"id":"PVTI_lADOABZxns4ASDf3zgI3D58","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/452"],"milestone":{"title":"[Epic] Infrastructure-as-Code","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","story Points":5,"title":"[Task]: Fix vulnerability checks"},{"assignees":["EOKENAVA"],"content":{"type":"Issue","body":"### Description\r\n\r\nThe project will use a systems for tracking tickets and organizing work into sprints. The goal of this ADR is to evaluate a series of ticket tracking systems and select the one we will be using for this project:\r\n\r\n### Options\r\n\r\n- Platform chosen for wiki\r\n- Google Docs\r\n- Microsoft Sharepoint\r\n- Box\r\n- Others as recommended by dev team\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **Onboarding:** New users can be onboarded to the tool at no cost to the user in a process that takes less than 2 days\r\n- **HHS Network Access:** Users can access the documents when they are on the HHS network\r\n- **Authority to Operate (ATO):** This platform is covered under the Grants.gov Authority to Operate\r\n- **Private Docs:** Users can restrict document access to certain users or groups\r\n- **Public Docs:** Users can make certain documents public so that members of the public can view the document\r\n- **Doc Formats:** The platform supports key document formats, including:\r\n - Text documents\r\n - Spreadsheets\r\n - Slide decks\r\n - PDFs\r\n- **Comments:** Users can comment on individual lines or sections within the document\r\n- **Collaborative Editing:** Multiple users can contribute to the document at the same time\r\n\r\n#### Nice to Have\r\n\r\n- **Open Source:** The code used to host and run the platform is open source\r\n- **Track Changes:** Users can make suggested edits to the document that the editor of the doc can accept or reject\r\n- **Templates:** Users can save certain documents as templates that other users can copy\r\n- **Plugins:** The platform supports additional features like codeblocks, calendar integrations, etc. through plugins or add-ons\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)\r\n- [ ] The resulting choice satisfies the must-have conditions listed above (or has a plan for addressing any gaps):\r\n - [ ] Onboarding\r\n - [ ] HHS Network Access\r\n - [ ] ATO\r\n - [ ] Private Docs\r\n - [ ] Public Docs\r\n - [ ] Formats\r\n - [ ] Comments\r\n - [ ] Collaborative editing\r\n","title":"[ADR]: Document Sharing","number":118,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/118"},"id":"PVTI_lADOABZxns4ASDf3zgHteGM","labels":["docs: adr","topic: comms","project: grants.gov"],"milestone":{"title":"Communication Platforms","description":"Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.","dueOn":"2023-08-23T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Sprint Backlog","story Points":3,"title":"[ADR]: Document Sharing"},{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"### Summary\r\n\r\nWhen running Google's lighthouse tool, it flags two items for SEO improvement.\r\n\u003cimg width=\"321\" alt=\"Screenshot 2023-08-22 at 1 31 01 PM\" src=\"https://github.com/HHS/grants-equity/assets/25465464/d4cbcc4a-8740-490b-a87b-230df5f2c835\"\u003e\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Page has a title element that can be found by google\r\n- [ ] Page has a meta description that can be found by google\r\n","title":"[Task]: Improve front-end SEO to comply with google best practices","number":397,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/397"},"id":"PVTI_lADOABZxns4ASDf3zgIt43g","labels":["topic: frontend","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/418"],"milestone":{"title":"Static site launch with NOFO content","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","story Points":2,"title":"[Task]: Improve front-end SEO to comply with google best practices"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup]\r\n\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the footer of the content. \r\n![image](https://github.com/HHS/grants-equity/assets/111455374/e0cd15c3-6808-4057-b9a2-c929c4781840)\r\n\r\n- Add the approved footer content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n* HHS Logo https://www.hhs.gov/web/policies-and-standards/web-policies/logo-seal-and-symbol-policies/index.html\r\n![HHS logo](https://github.com/HHS/grants-equity/assets/111455374/5ffc0675-3188-45b3-a869-38f0896581ab)\r\n* Twitter Link: https://twitter.com/grantsdotgov\r\n* Youtube link: https://www.youtube.com/user/GrantsGovUS\r\n* RSS link: https://www.grants.gov/web/grants/rss.html\r\n* Facebook link: there is no facebook link, this icon can be removed\r\n* Instagram link: There is no instagram link, this icon can be removed. \r\n* Newsletter link: https://www.grants.gov/web/grants/connect/newsletter-archive.html \r\n* Blog link: https://grantsgovprod.wordpress.com/\r\n* Phone number: 1-877-696-6775\r\n* Email: [support@grants.gov](mailto:support@grants.gov)\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Footer is working and match the Figma design\r\n- [ ] Appears as a story in Storybook\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)\r\n- [ ] Approvers: at least one design or product person\r\n\r\n### Dependencies\r\n#283 \r\n\r\n\r\n","title":"[Task]: Implement footer for static site","number":336,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/336"},"id":"PVTI_lADOABZxns4ASDf3zgIJ_E4","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/438"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Implement footer for static site"},{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"### Summary\n\nAdd a grants specific favicon to the site\n\n### Acceptance criteria\n\nFavicon is displayed in the browser tab","title":"[Task]: Add Favicon","number":454,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/454"},"id":"PVTI_lADOABZxns4ASDf3zgI7sc0","labels":["topic: frontend","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/458"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Add Favicon"},{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"### Summary\n\nImplement analytics.usa.gov on the beta.grants.gov site. \r\n\r\n### Dependencies\r\n- Register for an account, will need @lucasmbrown-usds with a HHS email to request it. \r\n\r\n### Implementation details\r\n\r\n1.[ Github repo with implementation instructions \u0026 code](https://github.com/digital-analytics-program/gov-wide-code)\r\n2. [DigitalGov implementation page](https://digital.gov/guides/dap/add-your-site-dap/)\r\n3. [DAP FAQs](https://digital.gov/guides/dap/common-questions-about-dap/)\r\n\r\n### Notes\r\n- The DAP script should only be applied to public-facing pages. Public-facing web pages are defined as those that can be accessed without any authentication or login, and are not part of an otherwise “privileged session.”\r\n- The DAP script tag should not be placed on pages visited during logged-in sessions. Notably, other seemingly “public” pages that can be accessed without authentication may also be part of privileged sessions; for example, a password reset page that is accessed by clicking a link in an email is not appropriate for DAP code because it assumes the visitor has the privilege of control over the email account used to provide the link. \r\n- How to add the analytics tag: https://digital.gov/guides/dap/add-your-site-dap/\n\n### Acceptance criteria\n\n - [ ] DAP is set up on the beta.grants.gov site ","title":"[Task]: set up analytics for beta.grants.gov","number":389,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/389"},"id":"PVTI_lADOABZxns4ASDf3zgIvnYk","labels":["project: grants.gov","level: epic"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/453"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: set up analytics for beta.grants.gov"},{"content":{"type":"Issue","body":"### Summary\n\nConfigure the [Safety](https://pypi.org/project/safety/) tool (or optionally just Renovate for consistency with front-end). Requires getting a Safety-specific API key and configuring in Github Actions. \n\n### Acceptance criteria\n\n- [ ] Get Safety API key \u0026 add to Github Secrets (need admin permissions)\r\n- [ ] Install and configure Safety\r\n- [ ] Add to Github Actions config","title":"[Task]: Back-end dependency vulnerability checks","number":239,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/239"},"id":"PVTI_lADOABZxns4ASDf3zgH7VJY","labels":["topic: backend","project: grants.gov"],"milestone":{"title":"[Epic]: Developer Tools","description":"Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.","dueOn":"2023-07-19T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Ready","title":"[Task]: Back-end dependency vulnerability checks"},{"content":{"type":"Issue","body":"### Summary\r\n\r\nThis needs to be created as a first step to update the System Security Plan.\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Review and complete SIA \r\n- [ ] SIA shared with internal team for review @EOKENAVA \r\n- [ ] SIA Review with @lucasmbrown-usds \r\n- [ ] SIA review with Jacob and Ricky with Security","title":"[Task]: Create Security Impact Assessment","number":459,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/459"},"id":"PVTI_lADOABZxns4ASDf3zgI76Es","labels":["documentation","project: grants.gov","level: task"],"milestone":{"title":"[Epic] Security Approval for static site","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","story Points":8,"title":"[Task]: Create Security Impact Assessment"},{"content":{"type":"Issue","body":"To get an SSL certificate, we need to complete the [DNS_Change_Request.pdf](https://github.com/HHS/grants-equity/files/12529419/DNS_Change_Request.pdf)\n\n\n\n**Acceptance Criteria**\n- [ ] Complete the DNS request and submits to Terrence(?)","title":"[Task] Complete and submit SSL form","number":472,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/472"},"id":"PVTI_lADOABZxns4ASDf3zgJAeOg","labels":["project: grants.gov"],"milestone":{"title":"[Epic] Security Approval for static site","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","title":"[Task] Complete and submit SSL form"},{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"## Description\r\n\r\nOnce we have identified the initial API needs, see #70, we will need to get data from the production database in order to provide opportunity information.\r\n\r\nFor testing purposes, we can use fixture data created in the API. There is another ticket for this.\r\n\r\nThere are several components.\r\n\r\n### Replication\r\n\r\nWe will need to get updated data from the existing grants.gov database. We will likely use the AWS DMS tool for this.\r\n\r\nQuestions include whether we would pull in all of the data updates or only specific tables.\r\n\r\nReplication would require that journaling is turned on on the existing Oracle database, and would affect that resource utilization of that database.\r\n\r\n### Transformation\r\n\r\nWe will undoubtedly need to do some kind of transformation once we have features that use the database. This may involve changing the data types of existing columns, creating new views to better support the API or aother analysis, or data cleaning.\r\n\r\nThe DMS tool supports this, however we may want to build our own transformation pipeline. A tool like dbt might be a good fit. In that case we would likely use an ELT strategy, first getting replicated data, then transforming it. The ADR could leave this decision for future work.\r\n\r\n### New Data Model\r\n\r\nOnce we start working on #70, we may want to store the data differently than in the current system. If this is the case we can describe that as changing or creating a new data model. If we change the data model then we will need to incorporate this in the transformation step.\r\n\r\n### Connecting to Test and Prod database\r\n\r\nThe spike should consider exactly what access point needs to be setup to peer between the VPCs in AWS, or if there is another connection strategy. This discovery should also note what other steps like turning on journaling will be necessary.\r\n\r\n### Questions to answer\r\n\r\n1. Do we want to replicate the database at all right now? \r\n2. Do we want to replicate the entire database or just specific tables for get_opportunities endpoint? (what is easiest is okay for us)\r\n3. What will we do for test data in our dev environment/local development?\r\n\r\n### Open Questions / Notes\r\n - Separate this into it's own task - Local dev data strategy (use of fixture data vs connecting to dev or prod AWS envs)\r\n\r\n### Definition of Done\r\n\r\n- [ ] A comment in this ticket or a page in the internal wiki documenting \r\n - [ ] Replication strategy (ie DMS, certain tables)\r\n - [ ] Initial transformation strategy \r\n - [ ] Description of different environments (dev / prod)\r\n- [ ] AWS budget has been updated if necessary\r\n- [ ] Steps that MH will need to take to support the decision will be recorded, such as turning on journaling or network setup\r\n- [ ] List of high level tasks that can be turned into tickets in order to start development\r\n\r\n### \r\n\r\nAfter this spike, we should be able to:\r\n\r\n* Write the #322 \r\n* Create an initial epic, ie \"Setup DMS Tool and Dev Database Replication\" with a backlog of tasks\r\n* Define following epics to define replication work\r\n\r\n\r\n","title":"[Spike]: Document replication and transformation strategies for production database","number":388,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/388"},"id":"PVTI_lADOABZxns4ASDf3zgIvf-Y","labels":["docs: adr","project: grants.gov"],"milestone":{"title":"Database (DB) replica","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","title":"[Spike]: Document replication and transformation strategies for production database"},{"content":{"type":"Issue","body":"### Description\r\n\r\nWe aim to decide on the most suitable replication tool for the transformation process. We could use AWS Data Migration but this ADR should evaluate if it is appropriate or if we should use an alternative tool. \r\n\r\nWe need to determine whether an ETL pipeline is required for data transformation if the selected replication tool does not handle it inherently. \r\n\r\n### Approvers\r\n\r\n- [ ] 1 engineer not on the ticket\r\n- [ ] Billy Daly or Lucas Brown\r\n\r\n### Options\r\n\r\n_No response_\r\n\r\n### Decision Criteria\r\n\r\nDecision criteria that could potentially impact the tool used: \r\n\r\n- **Data source and destination compatibility**: rep tool should support the data sources used in the project (db, file systems) and is compatible with the target destination (db, warehouses, cloud storage).\r\n- **Data volume and throughput**: tool can handle the volume and throughput requirements of the data replication process efficiently.\r\n- **Data transformation capabilities:** replication tool can handle data transformation during the replication process, including data format conversions and schema changes.\r\n- **Real-time vs. batch replication**: determine whether real-time data replication or if batch replication at scheduled intervals is sufficient.\r\n- **Latency and performance**: consider the latency and performance to ensure timely data updates and minimal impact on system performance.\r\n- **Security and encryption**: replication tool provides adequate security features, including data encryption and secure data transmission.\r\n- **Monitoring and alerting**: to promptly identify and address replication issues.\r\n- **Ease of use and configuration**: Evaluate the tool's user-friendliness and ease of configuration, as complex setup processes can lead to inefficiencies.\r\n- **Scalability**: Determine if the replication tool can scale to accommodate future growth and increased data demands.\r\n- **Cost**: Consider the licensing and operational costs\r\n- **Support and community**: Assess availability of support options and the size and activity of the tool's user community.\r\n\r\n\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: Replication tool","number":322,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/322"},"id":"PVTI_lADOABZxns4ASDf3zgIGeyo","labels":["docs: adr","topic: data","project: grants.gov"],"milestone":{"title":"Database (DB) replica","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Backlog","title":"[ADR]: Replication tool"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\n\n### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the hero content. \r\n![image](https://github.com/HHS/grants-equity/assets/25465464/95ffea5e-743d-403c-bd77-67e40c5118b3)\r\n\r\n- Add the approved hero content changes to the page\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n\r\n\r\n\n\n### Acceptance criteria\n\n### Acceptance criteria\r\n\r\n- [ ] Hero is working and match the Figma design\r\n- [ ] Appears as a story in Storybook\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)\r\n\r\n### Dependencies\r\n#283 ","title":"[Task]: Implement Hero for static site","number":359,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/359"},"id":"PVTI_lADOABZxns4ASDf3zgILYVE","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/376"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[Task]: Implement Hero for static site"},{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"### Summary\r\n\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the funding opportunity section the content. \r\n![image](https://github.com/HHS/grants-equity/assets/111455374/04a696a6-0f1c-41ac-a56d-ee3f0c42faca)\r\n\r\n\r\n- Add the approved funding opportunity content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n* The the 4 nofo prototypes available here: https://github.com/HHS/grants-equity/tree/main/documentation/notice_of_funding_opportunity_prototypes (ACF, ACL, CDC, SAMHSA)\r\n* The method for the feedback form is still TBD, if we have not decided on a method for collecting feedback at the time this ticket is picked up, we will not add the following section: \r\n![image](https://github.com/HHS/grants-equity/assets/111455374/c65a2731-ea79-42f9-9e62-672fbd8e6b29)\r\n\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Funding opportunity section is working and match the Figma design (Feedback form section is optional, depending on status)\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)","title":"[Task]: Implement the funding opportunity section for the static site","number":361,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/361"},"id":"PVTI_lADOABZxns4ASDf3zgILY8w","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/377"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[Task]: Implement the funding opportunity section for the static site"},{"assignees":["lucasmbrown-usds"],"content":{"type":"Issue","body":"### Summary\r\n\r\nGet a list of the all the tools, products, and services (AWS) that are on the approved ATO list for HHS.\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] List of ATO approved tools for HHS\r\n","title":"[TASK]: HHS AWS ATO List","number":222,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/222"},"id":"PVTI_lADOABZxns4ASDf3zgH5f2c","labels":["project: grants.gov"],"milestone":{"title":"[Epic] Security Approval for static site","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[TASK]: HHS AWS ATO List"},{"assignees":["andycochran"],"content":{"type":"Issue","body":"### Description\r\n\r\nIn the first iteration of the static site, one goal is to collect general feedback from applicants — especially first-time applicants or users who've created a workspace but haven't applied yet, but anyone should be able to respond regardless of their experience with federal grants. We also want to collect general responses to the new NOFO prototypes. \r\n\r\nWe're basically asking 2 questions: \r\n- What do you think of the new prototype funding announcements? \r\n- What do you think of the current funding announcements and/or grants.gov? \r\n\r\nOpen feedback should be collected through an open-ended text box (or two) that allows the user to write whatever they want. Either question can be address or ignored. \r\n\r\nWe need to decide by which method and technology we will collect this feedback. \r\n\r\n### Approvers\r\n\r\n- @lucasmbrown-usds \r\n- @itsemilyianacone\r\n- @andycochran\r\n- @sumiat \r\n- @acouch, @daphnegold, or @SammySteiner (1+ Engineer)\r\n\r\n\r\n### Options\r\n\r\n- Microsoft Form (created by HHS's 365) \r\n- HTML form that posts to HHS's Sharepoint\r\n- HTML form that creates a GitHub issue, letting users know their response will create a public issue w/o needing to create a GitHub account\r\n- Create and embed an open text form with a user research tool like [Dovetail](https://dovetail.com/), so that feedback is captured, centralized, and analyzed in the same place as future research studies\r\n- Link to (or embed) a Google form \r\n- Start a Google Group for the community, ask users to share there\r\n- ???\r\n\r\n### Decision Criteria\r\n\r\n- Should not feel like a black box for the user\r\n- Has a better UX than sending an email \r\n- The prompt is open-ended, yet guides the user to contribute meaningful and helpful feedback\r\n- Submissions are easy to sort through, analyze, and synthesize\r\n- User understands how their submission will be used\r\n- Does not require PRA clearance \r\n- Primary audience\r\n\r\nThis work should also include the use case for a Contact Us on beta.grants.gov: \r\n\r\nExplore options for solutions that allow members of of the public to submit questions or comments about the project as an alternative to a public forum like a listserv:\r\n\r\n[Front](https://front.com/)\r\n[Loop Email](https://www.intheloop.io/pricing-us/)\r\n[Google collaborative inbox](https://support.google.com/a/users/answer/167430?hl=en)\r\nContact us form on the website\r\nHHS internal options for shared inbox, such as [grants.simplification@hhs.gov](mailto:grants.simplification@hhs.gov)\r\nOthers as suggested by dev team\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)\r\n\r\n### Open questions / Notes\r\n- What are the use cases? How will we be using the data? \r\n- Design choices: Will we collect PII? Will we respond to the respondents? ","title":"[ADR]: Method \u0026 technology for collecting general feedback","number":306,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/306"},"id":"PVTI_lADOABZxns4ASDf3zgIEG4s","labels":["docs: adr","project: grants.gov"],"milestone":{"title":"Communication Platforms","description":"Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.","dueOn":"2023-08-23T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","story Points":8,"title":"[ADR]: Method \u0026 technology for collecting general feedback"},{"content":{"type":"Issue","body":"### Summary\r\n\r\nWe have prepared for 508 compliance for the beta site. We have: \r\n- Code linters tell us when we're missing a11y stuff\r\n- We've run Google Lighthouse — 100% score\r\n- USWDS is a 508-compliant design system ([accessibility docs](https://designsystem.digital.gov/documentation/accessibility/)) which we used\r\n\r\nThere is a formal approval process for 508 compliance that includes the following: \r\n* You submit to the compliance team via web form: \r\nhttps://www.hhs.gov/web/section-508/index.html \r\n* @itsemilyianacone may need to submit on Nava's behalf (not sure if we can do it ourselves)\r\n* Emily has a checklist for PDFs (used for NOFOs); she will try to get us the checklist for websites \r\n* 2 weeks submit to respond (more lead time better) \r\n\r\nThis ticket is track that work and ensure we go through the review process before launch. \r\n\r\n### Acceptance Criteria\r\n- [ ] Complete any checklist items provided by HHS\r\n- [ ] Submit the compliance web form \r\n- [ ] Create any tickets, only if remediations are needed\r\n- [ ] Completed or next steps for 508 compliance approval process defined","title":"[Task] 508 Compliance Review","number":473,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/473"},"id":"PVTI_lADOABZxns4ASDf3zgJAgE0","labels":["project: grants.gov","level: task"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","title":"[Task] 508 Compliance Review"},{"content":{"type":"Issue","body":"### Summary\r\n\r\nWhile we wait for PRA approval for a feedback form, we want someway for an individual to contact us in the \"Ways to Get Involved\" section. An interim solution while we wait is to use [equityingrants@hhs.gov](mailto:equityingrants@hhs.gov) email address. \r\n\r\n### Acceptance Criteria\r\n- [ ] Incorporate the email address [equityingrants@hhs.gov](mailto:equityingrants@hhs.gov) in the \"Ways to Get Involved\" section on the beta site so that users have a method of reaching out (aside from Support). ","title":"[Task] Interim feedback email","number":474,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/474"},"id":"PVTI_lADOABZxns4ASDf3zgJAgSk","labels":["project: grants.gov","level: task"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","title":"[Task] Interim feedback email"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\n\nSummary\nWe will use Terraform and Github Actions to spin up infrastructure for the back-end on AWS.\n\nSet up dev + prod environments on same account. We can add dev later. Either front-end or back-end, whichever comes first, will also be responsible for setting up higher level infra.\n\n\n\nRelated to #187 \nBlocked by #188\nUnblocks to #285\n\n### Acceptance criteria\n\n- [ ] Follow template-infra conventions to build and deploy architecture to AWS\n- [ ] Redeploys on changes to /api via Github Actions\n- [ ] Test/verify via AWS console","title":"[Task]: Set up back-end infrastructure in AWS","number":300,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/300"},"id":"PVTI_lADOABZxns4ASDf3zgICZ6s","labels":["topic: backend","project: grants.gov"],"milestone":{"title":"[Epic] Infrastructure-as-Code","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","title":"[Task]: Set up back-end infrastructure in AWS"},{"content":{"type":"Issue","body":"Suggested team design review/pass with @andycochran to make sure that all styling changes are captured.\r\n\r\n### Acceptance Criteria\r\n\r\n- Consistent font-typing","title":"Clean up styles","number":404,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/404"},"id":"PVTI_lADOABZxns4ASDf3zgIvlvw","labels":["project: grants.gov","level: epic"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/428"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"Clean up styles"},{"assignees":["andycochran"],"content":{"type":"Issue","body":"Per [Design Tooling](https://github.com/HHS/grants-api/blob/main/documentation/milestones/milestone_short_descriptions.md#design-tooling) milestone, explore options for design research tools that block the [Static site launch with NOFO content](https://github.com/HHS/grants-api/blob/main/documentation/milestones/milestone_short_descriptions.md#static-site-launch-with-nofo-content) milestone.","title":"[ADR]: design research tools","number":117,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/117"},"id":"PVTI_lADOABZxns4ASDf3zgHtVe0","labels":["docs: adr","project: grants.gov"],"milestone":{"title":"Design tooling","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Backlog","title":"[ADR]: design research tools"},{"assignees":["gcarson-bit"],"content":{"type":"Issue","body":"### Summary\r\n\r\nGet access to the Grants.gov database and get a high level view for the table layout and composition.\r\n\r\n### User story\r\n\r\nAs a Data Engineer, I want to start to draft the data model so that I can understand the relationships between key tables in the existing database and understand if there is a need to modify any schemas.\r\n\r\n### Acceptance criteria\r\n\r\n- [x] Devs get access to lower environment database\r\n","title":"[Story]: Explore Data Model","number":173,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/173"},"id":"PVTI_lADOABZxns4ASDf3zgHzsXA","labels":["topic: data","project: grants.gov"],"milestone":{"title":"Database (DB) replica","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 2","startDate":"2023-07-12","duration":14},"status":"Done","title":"[Story]: Explore Data Model"},{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup]\r\n\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the goals section of the content in the Figma.\r\n![image](https://github.com/HHS/grants-equity/assets/111455374/108a9edb-7d15-4efd-ba31-5cd244e8adc9)\r\n \r\n\r\n- Add the approved goals section content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n\r\n\r\n### Dependencies\r\n#283 \r\n\r\n\r\n\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Goals section is working and match the Figma design\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)","title":"[Task]: Implement the goals section for the static site","number":358,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/358"},"id":"PVTI_lADOABZxns4ASDf3zgILY9M","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/371"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[Task]: Implement the goals section for the static site"},{"assignees":["acouch","SammySteiner"],"content":{"type":"Issue","body":"### Summary\r\n\r\nCreate an initial architecture diagram for the backend and frontend that will serve as a living document in the main repository. \r\n\r\nThis architecture diagram will allow: \r\n- stakeholders to understand the overall system design at a glance\r\n- the team to make complex concepts and relationships easier to understand\r\n- the team to show the system dependencies, interfaces, and interactions which will allow stakeholders to evaluate impact of design choices, identify risks, make informed decisions regarding system modifications, scalability, and future enhancements. \r\n- Use a tool that is version controlled, like mermaid.js\r\n- We would need host diagram or application diagram\r\n\r\nExamples of a good place to start for level of depth: \r\n- https://github.com/usds/justice40-tool/blob/main/docs/architecture/architecture.mmd\r\n- https://github.com/usds/justice40-tool/tree/main/docs/architecture\r\n\r\n### User story\r\n\r\nAs a software architect, I want to create an initial architecture diagram for the backend so that I can have a visual representation of the system's structure, components, and their relationships. \r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Create a living document to visually represent the architecture\r\n- [ ] Following individuals have approved: \r\n - @acouch\r\n - engineer not working the ticket @daphnegold @SammySteiner\r\n - @lucasmbrown-usds \r\n - @widal001 \r\n- [ ] Following individuals have been notified for option review and feedback\r\n - @gcarson-bit\r\n - @sumiat\r\n- [ ] Diagram is created and stored in //TBD//\r\n- [ ] Secrets manager is defined in the architecture diagram\r\n\r\n### Describe the proposed testing strategy\r\n\r\n_No response_\r\n\r\n### Screenshots and additional context\r\n\r\n_No response_\r\n\r\nBlocked by #222 ","title":"[Story]: Architecture Diagram","number":188,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/188"},"id":"PVTI_lADOABZxns4ASDf3zgH33f4","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/365"],"milestone":{"title":"API Planning","description":"Formalize a series of architectural decisions about the API, including the technology stack we will use, the type of API we will build, and the services we'll leverage to deploy and host it.","dueOn":"2023-07-12T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[Story]: Architecture Diagram"},{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the Ways to Get Involved section content. \r\n![image](https://github.com/HHS/grants-equity/assets/25465464/c2cae0ca-0c92-4256-b3a7-68346f92c04e)\r\n\r\n- Add the approved Ways to Get Involved section content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n - Read our Project Goals and Milestones: https://github.com/HHS/grants-equity/blob/main/documentation/milestones/milestone_short_descriptions.md\r\n - Github: https://github.com/HHS/grants-equity \r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n\r\n### TBD\r\n\r\nNeed content for some TBD items mentioned in Figma:\r\n- Link for survey\r\n- Mailing list signup link\r\n- email address\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Ways to Get Involved section is working and match the Figma design\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)\r\n\r\n### Dependencies\r\n#283 ","title":"[Task]: Implement Ways to Get Involved Section for static site","number":362,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/362"},"id":"PVTI_lADOABZxns4ASDf3zgILY5c","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/385"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[Task]: Implement Ways to Get Involved Section for static site"},{"assignees":["sumiat"],"content":{"type":"Issue","body":"### Description\r\n\r\nThis ADR aims to evaluate different analytics tools to select one that supports the project in tracking key metrics during the launch of the first version of beta.grants.gov. We will evaluate top 3-5 analytics tools, including analytics.gov and Google Analytics, to identify the best fit for our specific needs and objectives. The selected tool should provide valuable insights and data to help us measure and optimize the platform's performance.\r\n\r\n### Approvers\r\n\r\n- [ ] @lucasmbrown-usds \r\n- [ ] @widal001 \r\n- [ ] 1 product or designer\r\n- [ ] 1 engineer\r\n\r\n\r\n### Options\r\n\r\n_No response_\r\n\r\n### Decision Criteria\r\n\r\n- **Data tracking capabilities**: solution should be able to track the essential metrics and events relevant to the project's goals, such as page views, user interactions, and other custom events.\r\n- **Data visualization and reporting**: The tool should offer clear and comprehensive data visualization and reporting features to present data in a way that is easy to understand and interpret for multiple audiences (public, internal HHS, etc.)\r\n- **Integration with existing systems**: consider whether the analytics tool can seamlessly integrate with the project's existing infrastructure, and other tools used in the development process. We will have a content management system in the future and we should have forward thinking to ensure it could be compatible with various CMS options. \r\n- **Real-time data processing**: Assess whether the analytics tool can provide real-time data processing capabilities, enabling timely responses to critical events.\r\n- **Data privacy and security**: Ensure that the selected tool complies with data privacy regulations and provides robust security measures to protect sensitive information.\r\n- **Scalability**: Consider whether the analytics tool can handle the expected growth in data volume and user traffic as the project expands.\r\n- **Cost**: Evaluate the pricing structure of the analytics tool.\r\n- **Customization and flexibility**: Determine the level of customization and flexibility offered by the tool to tailor it to the specific needs and requirements of the project.\r\n- **Support and documentation**: Check the availability of technical support, documentation, and community forums to aid in implementation and troubleshooting.\r\n- **User-friendly interface**: Consider the ease of use and intuitiveness of the tool's interface, enabling team members to efficiently navigate and extract insights.\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: Analytics platform","number":323,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/323"},"id":"PVTI_lADOABZxns4ASDf3zgIGfGA","labels":["docs: adr","topic: data","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/372"],"milestone":{"title":"[Epic]: Web analytics","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[ADR]: Analytics platform"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Problem Statement\r\n\r\nThe [communications platform milestone](milestone) identifies a series of platforms through which the Grants API project needs to engage both internal and external stakeholders. One of these platforms is a wiki for storing notes, documents, and other content about the project. Ideally we would select a platform that balances ease of use and flexibility with the cost of implementing and maintaining the wiki.\r\n\r\nThe goal of this ADR is to evaluate a series of potential wiki platforms and determine which one best fits the needs and objectives of this project based on the decision criteria outlined below. \r\n\r\nRelated to #22 \r\n\r\n### Approvers\r\n\r\n- @lucasmbrown-usds \r\n- @sarahknoppA6 \r\n- @acouch \r\n- @sumiat \r\n- @andycochran \r\n\r\n### Options\r\n\r\n- [Confluence](confluence)\r\n- [Notion](notion)\r\n- [GitHub Wiki](gh-wiki)\r\n- [GitBook](gitbook)\r\n- [WikiJS](wiki-js)\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **Usability:** Non-technical users should be able to access and create content with minimal training or guidance.\r\n- **Content Review:** Collaborators should be able to review and edit draft content before those changes are published.\r\n- **Version History:** Editors should be able to see and restore previous versions of a given page.\r\n- **Multi-Media:** The platform should support multiple types of media (e.g. videos, images, file uploads, tables, diagrams) with minimal configuration.\r\n- **Internationalization (i18n):** The platform should provide support for displaying content in multiple languages.\r\n- **Web Analytics:** The platform should provide support for tracking site usage and other web analytics.\r\n- **Onboarding Costs:** Onboarding new members to the platform should be relatively inexpensive, both in terms of staff time/resources and direct costs (e.g. licensing fees).\r\n- **Maintenance Costs:** It should not be prohibitively expensive to maintain the wiki, both in terms of staff time/resources and direct costs (e.g. hosting fees).\r\n\r\n#### Nice to Have\r\n\r\n- **External Contributions:** Members of the public should be able to suggest changes to wiki content and internal stakeholders should be able to review those contributions before they are published.\r\n- **Data Access:** Content generated and stored in the wiki should be accessible outside of the wiki platform, either through syncing content to an HHS owned repository or through an official API.\r\n- **Open Source:** The tool used to manage and host the wiki content should be open source, if possible.\r\n\r\n### Definition of Done\r\n\r\n- [ ] The ADR is drafted and stored in documentation/[ADR folders TBD]/\r\n- [ ] The ADR is included in the necessary table of contents in the ADR/decision folder\r\n- [ ] The ADR describes the drivers and pros and cons of the decision\r\n- [ ] The ADR has been reviewed and approved by the internal team\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template","title":"[ADR]: Wiki Platform","number":30,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/30"},"id":"PVTI_lADOABZxns4ASDf3zgHk7G8","labels":["docs: adr","topic: comms","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/36"],"milestone":{"title":"Communication Platforms","description":"Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.","dueOn":"2023-08-23T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","story Points":3,"title":"[ADR]: Wiki Platform"},{"assignees":["sumiat"],"content":{"type":"Issue","body":"### Description\r\n\r\nThe project will need a video conference platform for both internal (HHS + contractors) and external (w/ members of the public) meetings. The goal of this ADR is to review and select a video conference platform for the project.\r\n\r\n### Options\r\n\r\n- [Zoom](https://zoom.us/)\r\n- [Microsoft Teams](https://www.microsoft.com/en-us/microsoft-teams/group-chat-software)\r\n- [Google Meet](https://meet.google.com/)\r\n- [Jitsi](https://jitsi.org/)\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **Public Access:** If they have the right link, members of the public can join a video call without creating an account\r\n- **Waiting Room:** Meeting organizers can configure their meetings to require that attendees must be admitted before they can join the call\r\n- **Video Recording:** Meeting organizers can record a video call from within the platform\r\n- **Screen Sharing:** Attendees can share their screen (if given the appropriate permissions by meeting organizer)\r\n- **Chat:** Users can post comments and questions in a chat that are visible to other attendees\r\n- **Phone Support:** Users can join by phone if they don't have access to a computer for video\r\n- **Live Transcription:** The platform supports live transcription for attendees that may need closed captioning\r\n- **Authority to Operate:** The platform should be covered under the existing ATO for Grants.gov\r\n\r\n#### Nice to Have\r\n\r\n- **Webinar:** The platform supports a webinar format, i.e. attendees who can join and post questions but not see one another or unmute without permission\r\n- **Breakout Rooms:** A meeting organizer can split users out into virtual \"breakout rooms\" for small-group discussions\r\n- **Open Source:** The code to run this platform is open source and offers a self-hosting option\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)\r\n- [ ] The selection made by the ADR should satisfy the must-have criteria (or have a plan to address the gaps):\r\n - [ ] Public access\r\n - [ ] Waiting room\r\n - [ ] Video recording\r\n - [ ] Screen sharing\r\n - [ ] Chat\r\n - [ ] Phone support\r\n - [ ] Live transcription\r\n - [ ] ATO","title":"[ADR]: Video Conference","number":99,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/99"},"id":"PVTI_lADOABZxns4ASDf3zgHqwmU","labels":["docs: adr","topic: comms","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/330","https://github.com/HHS/grants-equity/pull/337"],"milestone":{"title":"Communication Platforms","description":"Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.","dueOn":"2023-08-23T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[ADR]: Video Conference"},{"assignees":["widal001"],"content":{"type":"Issue","body":"","title":"[Task]: Train HHS staff on GitHub","number":449,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/449"},"id":"PVTI_lADOABZxns4ASDf3zgI6Z5c","labels":["project: nofo","level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Backlog","story Points":2,"title":"[Task]: Train HHS staff on GitHub"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\r\n\r\nBlocked by #139 \r\n#299 #300 should be completed prior to this ticket (see below)\r\n\r\nNote: Infrastructure + Github Actions should exist before this ticket can be worked on. This can be done in multiple ways, at the discretion of whoever picks up this issue:\r\n1. Incrementally, in coordination and piecemeal as front-end or back-end infrastructure are set up\r\n1. First either front-end or back-end is set up, then this is done in tandem with the remaining\r\n1. As a fast follow up task after back-end and front-end infra, where CI/CD will not function as intended until this is completed\r\n\r\n____\r\n\r\nTemplate applications are meant to be in separate repositories. Some work needs to be done for the Github Actions to run appropriately in a mono-repo after template infra is implemented for both frontend and API. See links for more context.\r\n\r\nhttps://github.com/navapbc/template-infra/issues/238\r\nhttps://nava.slack.com/archives/C03G1SWD9H7/p1689363837120939\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Modify Github Actions workflows\r\n- [ ] Test (I haven't tried this, but there are ways to run GA locally now, please report back how it goes!)","title":"[Task]: Reconfigure Github Actions CI/CD for mono-repo structure","number":285,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/285"},"id":"PVTI_lADOABZxns4ASDf3zgIAvLE","labels":["project: grants.gov"],"milestone":{"title":"[Epic] Front-end CI/CD","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","title":"[Task]: Reconfigure Github Actions CI/CD for mono-repo structure"},{"content":{"type":"Issue","body":"### Summary\n\nCurrently, Github Actions has administrator access. We will want to pare that down to only necessary permissions. There's a template ticket for this as well. Can pull in the change from there if they beat us to implementing.\r\n\r\nhttps://github.com/navapbc/template-infra/issues/194\n\n### Acceptance criteria\n\n- Check if template has completed new role assignment permissions for Github Actions and pull in if they have\r\n- Reduce role permissions for GA if not","title":"[Task]: Github actions permissions","number":332,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/332"},"id":"PVTI_lADOABZxns4ASDf3zgIJz5s","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"[Epic] Infrastructure-as-Code","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","title":"[Task]: Github actions permissions"},{"assignees":["widal001","sumiat"],"content":{"type":"Issue","body":"### Description\r\n\r\nCreate the individual milestone document for the Open Source Group Kickoff milestone #72 \r\n\r\n### Definition of Done\r\n\r\n- [ ] Milestone document is updated and stored in `documents/milestones/individual_milestones/`\r\n- [ ] The milestone document has been linked under the appropriate section in the short description doc\r\n- [ ] The milestone has node has been updated to \"planning\" in the dependency diagram\r\n- [ ] Milestone has been reviewed and approved by the internal team\r\n- [ ] A corresponding epic has been created for the milestone","title":"[Milestone Doc]: Open Source Group Kickoff","number":221,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/221"},"id":"PVTI_lADOABZxns4ASDf3zgH5bhc","labels":["docs: milestone","project: grants.gov"],"milestone":{"title":"FY23 Q4: Open source group kickoff","description":"","dueOn":"2023-09-27T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","story Points":3,"title":"[Milestone Doc]: Open Source Group Kickoff"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Description\n\nDraft the milestone document for #56 \n\n### Definition of Done\n\n- [ ] Milestone document is updated and stored in `documents/milestones/individual_milestones/`\n- [ ] The milestone document has been linked under the appropriate section in the short description doc\n- [ ] The milestone has node has been updated to \"planning\" in the dependency diagram\n- [ ] Milestone has been reviewed and approved by the internal team\n- [ ] A corresponding epic has been created for the milestone","title":"[Milestone Doc]: Public Measurement Dashboard","number":180,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/180"},"id":"PVTI_lADOABZxns4ASDf3zgH2Ueg","labels":["docs: milestone","topic: data","project: grants.gov"],"milestone":{"title":"FY24 Q1: Public measurement dashboard","description":"","dueOn":"2023-12-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","story Points":3,"title":"[Milestone Doc]: Public Measurement Dashboard"},{"assignees":["widal001"],"content":{"type":"Issue","body":"So far, I've written our mermaid diagram of milestones defining the links within the subgraphs. Unfortunately, the order of the subgraphs is important because the first time a node appears in the Markdown determines the subgraph that the Node will be a part of. Given that the subgraphs are extremely complex, this makes it hard to edit the diagram and NOT have a node switch subgraphs.\r\n\r\nFor example, it might look like: \r\n\r\n``` \r\nflowchart LR\r\n\r\n subgraph Subgraph 1 \r\n A\r\n end\r\n\r\n subgraph Subgraph 2 \r\n A --\u003e B\r\n end\r\n``` \r\n\r\nWhereas the same code with the subgraphs reordered:\r\n\r\n```\r\nflowchart LR\r\n\r\n subgraph Subgraph 2 \r\n A --\u003e B\r\n end\r\n\r\n subgraph Subgraph 1 \r\n A\r\n end\r\n``` \r\n\r\nWill render differently. \r\n\r\nTo solve this, I'm going to remove all links from all subgraphs, and only define the nodes in each subgraph. Then I'll define the links outside of the subgraphs. Like this: \r\n\r\n```\r\nflowchart LR\r\n\r\n subgraph Subgraph 2 \r\n B\r\n end\r\n\r\n subgraph Subgraph 1 \r\n A\r\n end\r\n\r\n A--\u003eB\r\n```","title":"[Task]: Rewrite mermaid diagram to improve stability","number":7,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/7"},"id":"PVTI_lADOABZxns4ASDf3zgHk7Gg","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/11"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Backlog","story Points":1,"title":"[Task]: Rewrite mermaid diagram to improve stability"},{"assignees":["andycochran"],"content":{"type":"Issue","body":"### Summary\n\nPer info brainstormed in #106, draft a content strategy for a v0.0 of the static beta site that includes: \r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- ~Information about upcoming events~ (do not yet exist) \r\n\r\nInformation to be confirmed: \r\n- URI for survey (and whether the call-to-action should only be for applicants, not grantors)\r\n- What's the preferred contact method for grantors at HHS or other grantmaking agencies to reach out — email, phone, specific point of contact?\r\n- Can/should quotes from user research be included? \n\n### Acceptance criteria\n\n- [x] Reviewed with @itsemilyianacone \n- [x] Reviewed with @lucasmbrown-usds \n- [x] Reviewed with and approved by Elizabeth \n- [x] Andy has synced with engineering team regarding implementation ","title":"[Task]: Content design draft for static beta site","number":219,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/219"},"id":"PVTI_lADOABZxns4ASDf3zgH5MMs","labels":["enhancement","project: grants.gov"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Content design draft for static beta site"},{"assignees":["widal001","EOKENAVA"],"content":{"type":"Issue","body":"### Description\r\n\r\nThe project will use a systems for tracking tickets and organizing work into sprints. The goal of this ADR is to evaluate a series of ticket tracking systems and select the one we will be using for this project:\r\n\r\n### Approvers\r\n\r\n- @lucasmbrown-usds \r\n- @EOKENAVA \r\n- @sumiat \r\n- @sarahknoppA6 \r\n- @acouch \r\n\r\n### Options\r\n\r\n- GitHub Issues for tickets + Zenhub for sprint planning\r\n- GitHub Issues for tickets + GitHub Projects for sprint planning\r\n- Jira for tickets and sprint planning\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **Onboarding:** New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days\r\n- **Ticket Tracking:** Tickets can be organized into sprints and tracked as part of larger milestones or epics\r\n- **Public Access:** Without logging in, members of the public can see tickets that are being worked on\r\n- **Public Requests:** Members of the public can submit bug reports and feature requests and track how that work is being prioritized\r\n- **Templates:** The system supports default templates for different types of tickets which prompts the person creating the ticket for a specific set of information\r\n\r\n#### Nice to Have\r\n\r\n- **Level of Effort Estimates:** Tickets can be assigned an estimated level of effort (e.g. story points, t-shirt size, etc.)\r\n- **Reporting:** Users can report on key metrics like burndown, point allocation, etc. from directly within the tool\r\n- **Roadmap:** The system provides views that lets users understand how individual tickets rollup into a broader project roadmap as well as the status of milestones within that roadmap\r\n\r\n### Definition of Done\r\n\r\n- [x] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [x] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [x] The ADR has been reviewed and approved by the approvers listed above\r\n- [x] The ADR satisfies requirements that are outlined in the ADR template\r\n- [x] Any follow-up tickets have been created (if necessary)\r\n- [x] The resulting choice satisfies the must-have conditions listed above (or has a plan for addressing any gaps):\r\n - [x] Onboarding\r\n - [x] Ticket tracking\r\n - [x] Public access\r\n - [x] Public requests\r\n - [x] Templates","title":"[ADR]: Ticketing System","number":98,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/98"},"id":"PVTI_lADOABZxns4ASDf3zgHqwmQ","labels":["docs: adr","topic: comms","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/182"],"milestone":{"title":"Communication Platforms","description":"Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.","dueOn":"2023-08-23T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 2","startDate":"2023-07-12","duration":14},"status":"Done","story Points":2,"title":"[ADR]: Ticketing System"},{"assignees":["acouch","EOKENAVA"],"content":{"type":"Issue","body":"### Summary\r\n\r\nThe existing System Security Plan needs to be reviewed to include the beta.grants.gov infrastructure, tools, team, and operating procedures.\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- Review the existing SSP and collaborate with MH and ISSO on next steps","title":"[Task]: Review Existing SSP to Include beta.grants.gov infra, tools, and team","number":391,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/391"},"id":"PVTI_lADOABZxns4ASDf3zgIsDE0","labels":["documentation","project: grants.gov"],"milestone":{"title":"[Epic]: beta.grants.gov domain","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Review Existing SSP to Include beta.grants.gov infra, tools, and team"},{"assignees":["acouch"],"content":{"type":"Issue","body":"## Description\r\n\r\nThe project will be hosted on a cloud provider and provisioned by an infrastructure as code tool. Security, utility, and interoperability are primary concerns.\r\n\r\n## Definition of Done\r\n\r\n- [x] ADR explains pros and cons of decision\r\n- [x] Security, utility, and interoperability are addressed","title":"[ADR]: Cloud Platform and IAC Tool","number":93,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/93"},"id":"PVTI_lADOABZxns4ASDf3zgHqwl0","labels":["docs: adr","topic: infra","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/119"],"milestone":{"title":"[Epic] Infrastructure-as-Code","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[ADR]: Cloud Platform and IAC Tool"},{"assignees":["daphnegold","gcarson-bit"],"content":{"type":"Issue","body":"**Definition of Done**\n- [x] Use AWS estimation tool to generate the probable cost of infrastructure over the first month\n- [x] Submit 💰","title":"Initial AWS Budget","number":107,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/107"},"id":"PVTI_lADOABZxns4ASDf3zgHqwnI","labels":["topic: infra","project: grants.gov"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 2","startDate":"2023-07-12","duration":14},"status":"Done","title":"Initial AWS Budget"},{"assignees":["sumiat"],"content":{"type":"Issue","body":"### Description\r\n\r\nDetermine the platform that we want to use for the chat-based communication (e.g. Slack, Discord, Microsoft Teams, etc.)\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: Chat","number":105,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/105"},"id":"PVTI_lADOABZxns4ASDf3zgHqwm4","labels":["docs: adr","topic: comms","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/309","https://github.com/HHS/grants-equity/pull/310"],"milestone":{"title":"Communication Platforms","description":"Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.","dueOn":"2023-08-23T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 2","startDate":"2023-07-12","duration":14},"status":"Done","title":"[ADR]: Chat"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Description\n\nCreate the individual milestone document for the [GET Opportunities milestone](https://github.com/orgs/HHS/projects/12/views/2?pane=issue\u0026itemId=31951053) milestone.\n\n### Definition of Done\n\n- [ ] Milestone document is updated and stored in `documents/milestones/individual_milestones/`\n- [ ] The milestone document has been linked under the appropriate section in the short description doc\n- [ ] The milestone has node has been updated to \"planning\" in the dependency diagram\n- [ ] Milestone has been reviewed and approved by the internal team\n- [ ] A corresponding epic has been created for the milestone","title":"[Milestone doc]: GET Opportunities","number":220,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/220"},"id":"PVTI_lADOABZxns4ASDf3zgH5aPc","labels":["docs: milestone","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/249"],"milestone":{"title":"FY24 Q1: GET Opportunities","description":"Deploy a public endpoint to PROD that allows users to see at least one (but not necessarily more than one!) field of data per listed opportunity in grants.gov","dueOn":"2023-10-11T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","story Points":3,"title":"[Milestone doc]: GET Opportunities"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Description\r\n\r\nCreate the individual milestone document for the [Static Site](https://github.com/HHS/grants-api/blob/main/documentation/milestones/milestone_short_descriptions.md#static-site-launch-with-nofo-content) milestone.\r\n\r\n### Definition of Done\r\n\r\n- [ ] Milestone document is drafted and stored in documents/milestones/individual_milestones/\r\n- [ ] The milestone document has been linked under the appropriate section in the short description doc\r\n- [ ] The milestone has node has been updated to \"planning\" in the dependency diagram\r\n- [ ] Milestone has been reviewed and approved by the internal team\r\n- [ ] A corresponding epic has been created for the milestone","title":"Milestone Doc: Static Site with NOFO Content","number":33,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/33"},"id":"PVTI_lADOABZxns4ASDf3zgHk7HM","labels":["docs: milestone","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/243"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","story Points":3,"title":"Milestone Doc: Static Site with NOFO Content"},{"assignees":["gcarson-bit"],"content":{"type":"Issue","body":"### Summary\n\nEvaluate the AWS Database Migration Service (DMS) feasibility as a potential solution for the Grants.gov DB replication.\r\nCheck that it meets the replication requirements:\r\n\r\n- Can handle the size of the existing DB\r\n- Can support data transformations\r\n- Logging\r\n- Cost\r\n- FEDRAMP approved\n\n### Acceptance criteria\n\nDMS is evaluated and determined to be either feasible or not feasible as a potential solution for the Grants.gov DB replication.","title":"[Task]: Research DMS as DB Replication Tool","number":369,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/369"},"id":"PVTI_lADOABZxns4ASDf3zgISfF4","labels":["topic: data"],"planned Start":"2023-08-01","repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 3","startDate":"2023-07-26","duration":14},"status":"Done","title":"[Task]: Research DMS as DB Replication Tool"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\n\nBlocked by #245 \n\nIntegrate Gunicorn production server into Flask API for deployment to prod.\n\n### Acceptance criteria\n\n- [ ] Install server\n- [ ] Test and verify","title":"[Task]: Integrate back-end production server","number":246,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/246"},"id":"PVTI_lADOABZxns4ASDf3zgH-x8I","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/374"],"milestone":{"title":"Milestone: API Implementation","description":"### Summary \r\n\r\nDuring the [API Planning ](url) work we were able to formalize a series of architectural decisions about the API, including the technology stack and the type of API we will build, and the services we'll leverage to deploy and host it. This work focuses on implementing and building the API. ","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[Task]: Integrate back-end production server"},{"content":{"type":"Issue","body":"This font has a number of accessbility features: https://brailleinstitute.org/freefont ","title":"Investigate using hyperlegible for font for website and materials","number":5,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/5"},"id":"PVTI_lADOABZxns4ASDf3zgHk7Gc","labels":["project: grants.gov"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"Investigate using hyperlegible for font for website and materials"},{"content":{"type":"Issue","body":"### Summary\n\nBlocked by #110 \n\nConfigure a pre-commit hook separately for Python and JavaScript that can run desired code quality tools in the respective directories\n\n### Acceptance criteria\n\n- [ ] Configure to run desired code quality tools\n- [ ] Update README.md","title":"[Task]: Configure pre-commit hooks","number":223,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/223"},"id":"PVTI_lADOABZxns4ASDf3zgH5sqI","labels":["project: grants.gov"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Configure pre-commit hooks"},{"assignees":["itsemilyianacone"],"content":{"type":"Issue","body":"- Make sure the PDFs in the [notice_of_funding_opportunity_prototypes ](https://github.com/HHS/grants-equity/tree/main/documentation/notice_of_funding_opportunity_prototypes) directory are the most recent version\n- Add the 4th prototype ","title":"[Task]:Update the NOFO prototype PDFs","number":235,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/235"},"id":"PVTI_lADOABZxns4ASDf3zgH65gQ","labels":["enhancement","project: grants.gov"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","title":"[Task]:Update the NOFO prototype PDFs"},{"assignees":["acouch"],"content":{"type":"Issue","body":"### Description\n\nThis ADR will record the decision for Python database tools to be used.\n\n### Approvers\n\n@acouch \r\n@lucasmbrown-usds \r\n@Samm\n\n### Options\n\nSQLAlchemy\r\nAlembic\n\n### Decision Criteria\n\n_No response_\n\n### Definition of Done\n\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\n- [ ] The ADR has been reviewed and approved by the approvers listed above\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: Python Database Tools","number":237,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/237"},"id":"PVTI_lADOABZxns4ASDf3zgH7Rm4","labels":["docs: adr","topic: data","project: grants.gov"],"milestone":{"title":"Test data and schema","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Backlog","title":"[ADR]: Python Database Tools"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\n\nBlocked by #110, #109 \n\nGithub Actions checks (tests passing, etc) should stop PRs from merging until they pass. A repo admin will need to pick up this task.\n\n### Acceptance criteria\n\n- [x] Configure Github Actions to block PR merge until they pass","title":"[Task]: Github Actions checks should block merging PRs","number":286,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/286"},"id":"PVTI_lADOABZxns4ASDf3zgIAwuk","labels":["project: grants.gov"],"milestone":{"title":"[Epic]: Developer Tools","description":"Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.","dueOn":"2023-07-19T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 2","startDate":"2023-07-12","duration":14},"status":"Done","title":"[Task]: Github Actions checks should block merging PRs"},{"assignees":["gcarson-bit"],"content":{"type":"Issue","body":"### Context\r\n\r\nWe've started the work on the #48. In this issue, we want to perform a technical spike to identify shortcomings and must-haver requirements that will support the design of the new data model. The goal is to gather information on the problem landscape with the current DB, requirements, and use cases. The previous team has implemented several DB performance improvements which should also be considered. \r\n\r\nThere are a few open questions that are also needed to be answered. You can find them in the [the milestone doc](https://github.com/HHS/grants-equity/blob/main/documentation/milestones/individual_milestones/db_planning.md#open-questions) introduced by #104 \r\n\r\n### Outcomes\r\n\r\nThe spike will provide a comprehensive understanding of the challenges and requirements related to the current database. It will help in scoping the DB work effectively and guide the design of a new data model that addresses identified shortcomings and aligns with stakeholder and user needs. \r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Spike document created that provides information to support the design of the new data model\r\nQuestions have been reviewed and answered with support of HHS staff\r\n- [ ] The answers to all of the questions have been documented in the milestone document\r\n - [ ] Will this database serve as an OLTP system, OLAP system, or both? Will this database be used for analytics, and is there a need for a second database to be created with data pipelines?\r\n - [ ] What are the current datastores that support the legacy Grants.gov system?\r\n - [ ] Is the existing Grants.gov database heavy on read or write transactions?\r\n - [ ] How many external sources does the existing database have?\r\n\r\n\r\n### Notes\r\n- Decreased application process time by over 90%(from 2+ minutes to under 12 seconds)\r\n- Reduced query run times by an average of 90% by tuning top 25 database queries\r\n- Reduced login time by 66% (from 3 seconds to under 1 second)\r\n- Reduced time to extract information from the SAM directory by 96.5%(from over 22 hours each month to under 45 minutes)\r\n- Moved 60% of database cron jobs to scheduler jobs, improving monitoring and success rates\r\n\r\n","title":"[Task]: Spike for DB Planning","number":247,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/247"},"id":"PVTI_lADOABZxns4ASDf3zgH-9hU","labels":["docs: milestone","topic: data","project: grants.gov"],"milestone":{"title":"DB Planning","description":"Formalize a series of architectural decisions about how data is stored, including the type of database we will use and the platform we'll use host it.","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Backlog","title":"[Task]: Spike for DB Planning"},{"content":{"type":"Issue","body":"### Summary\n\nDetermine the appropriate information hierarchy for the docs within the repository.\n\n### User story\n\n- As an open source contributor I want:\r\n - the root level README to explain the setup of the repository, so that I don't have to click into a bunch of different sub-directories to find out what they are used for.\r\n - the steps to get started with each part of the repo to be clear from the root of that repo, so that I don't have to explore a read through multiple pages of documentation just to get started.\n\n### Acceptance criteria\n\n- [ ] The approach to structuring the information hierarchy of the repository has been documented so that other maintainers/contributors know how to organize docs in a consistent way\r\n- [ ] At least 2 users who have no prior experience with the repository can follow the guidelines in the root-level README and correctly set up the codebase in each of the sub-directories with minimal guidance\n\n### Describe the proposed testing strategy\n\n- Ask two users with no prior exposure to the repository to follow the instructions from the root-level README and set up the codebase in each of the sub-directories\r\n- Ask a member of the project how they would organize the docs for a new hypothetical sub-directory to ensure that the guidelines provided with this ticket are clear and consistent with how the doc is organized.\n\n### Screenshots and additional context\n\n_No response_","title":"[Story]: Information hierarchy for docs","number":248,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/248"},"id":"PVTI_lADOABZxns4ASDf3zgH--oc","labels":["project: grants.gov"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Story]: Information hierarchy for docs"},{"content":{"type":"Issue","body":"### Summary\n\nThe proposed front-end license checking tool, [license-check](https://www.npmjs.com/package/license-checker), needs to be configured. It's unclear if the license verification is robust enough to meet our needs regarding automation.\n\n### Acceptance criteria\n\n- [ ] Check that license-checker is robust enough to automatically verify licensing checks\r\n- [ ] If a different tool is chosen, update ADR https://github.com/HHS/grants-equity/issues/102\r\n- [ ] Configure Github Actions to run automatically","title":"[Task]: Front-end license checking","number":292,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/292"},"id":"PVTI_lADOABZxns4ASDf3zgICB80","labels":["project: grants.gov"],"milestone":{"title":"[Epic]: Developer Tools","description":"Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.","dueOn":"2023-07-19T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Backlog","title":"[Task]: Front-end license checking"},{"content":{"type":"Issue","body":"### Summary\r\n\r\nSet up hosting for the static beta.grants.gov site\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] The static site is running on AWS (or github pages if necessary)\r\n- [x] Whatever front-end infrastructure identified in #189 and #188 is deployed\n- [ ] Requests are successfully routed through the application infrastructure\r\n\r\n### Notes\r\n- Blocked by #139\r\n- Use Github actions but need to confirm. Need to know more about the HHS tenant, we might need special permissions. Until we get access to AWS tenant, we don't know for sure. Checking with @marwanabufadel ","title":"[Task]: Setup hosting for beta.grants.gov","number":293,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/293"},"id":"PVTI_lADOABZxns4ASDf3zgICGM0","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"[Epic]: beta.grants.gov domain","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Backlog","title":"[Task]: Setup hosting for beta.grants.gov"},{"content":{"type":"Issue","body":"### Summary\r\n\r\n- Configure routing rules to map correctly\r\n\r\n### Acceptance criteria\r\n- Routing rules are correctly configured\r\n\r\n_No response_","title":"[Task]: Routing for static site","number":294,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/294"},"id":"PVTI_lADOABZxns4ASDf3zgICHLA","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"[Epic]: beta.grants.gov domain","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Routing for static site"},{"content":{"type":"Issue","body":"### Summary\n\nSet up SSL certificate for static site to enable secure and encrypted communication between the web server and clients. \n\n- Identify who manages SSL Certificates for grants.gov\n- certificate procurement\n- certificate installation\n- SSL configuration\n- verification and testing\n- set up automatic certificate renewal \n- documentation of the SSL cert details, including expiration and renewal procedure \n\n### Acceptance criteria\n\n- [ ] SSL cert is successfully installed and validated\n- [ ] Update load balancer to accept connections from port 443\n- [ ] Website is accessible via HTTPS\n- [ ] HTTPS redirection is functional\n- [ ] Documentation is provided for future reference\n\n\n### Notes / Open Questions\n- Who on HHS is responsible for managing/procuring SSL certificates? @EOKENAVA to find the correct contact\n- Does the SSP need to be done before this? \n- This could be done as a follow up. Beta.grants.gov could be released HTTP","title":"[Task]: SSL certificate setup","number":296,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/296"},"id":"PVTI_lADOABZxns4ASDf3zgICIZ4","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"[Epic]: beta.grants.gov domain","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[Task]: SSL certificate setup"},{"assignees":["widal001"],"content":{"type":"Issue","body":"","title":"[Task]: Troubleshoot error with historic charts in GitHub insights","number":311,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/311"},"id":"PVTI_lADOABZxns4ASDf3zgIFZSI","labels":["topic: data","project: grants.gov","level: task"],"milestone":{"title":"Sprint Reporting","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Troubleshoot error with historic charts in GitHub insights"},{"assignees":["widal001","sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task]: Requirements gathering for sprint reporting","number":312,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/312"},"id":"PVTI_lADOABZxns4ASDf3zgIFZSU","labels":["topic: data","project: grants.gov","level: task"],"milestone":{"title":"Sprint Reporting","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Requirements gathering for sprint reporting"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Description\r\n\r\nCreate a chart that shows the sprint burndown: % of tickets and/or points remaining over the course of the sprint\r\n\r\n### Acceptance Criteria\r\n\r\n- [ ] A chart exists which displays this metric for each sprint\r\n- [ ] There is a mechanism for updating that chart programmatically that multiple people can run\r\n","title":"[Task]: Sprint burndown v0 chart","number":313,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/313"},"id":"PVTI_lADOABZxns4ASDf3zgIFZSg","labels":["topic: data","project: grants.gov","level: task"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/436"],"milestone":{"title":"Sprint Reporting","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Review","story Points":2,"title":"[Task]: Sprint burndown v0 chart"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Summary\n\nMigrate the approved draft of the NOFO Project Plan from Excel to the [NOFO Project Tracker in GitHub](https://github.com/orgs/HHS/projects/14/views/3)\n\n### Acceptance criteria\n\n- [ ] All of the tasks in the Excel file have been transferred to GitHub with the corresponding fields updated\n- [ ] Previous versions of NOFO milestones or tasks have been archived\n- [ ] The tasks and milestones have been converted into issues with the appropriate labels applied\n- [ ] An initial set of views and charts have been created to assist with creating the status report\n- [ ] GitHub project are reviewed and approved by Elizabeth and Camille, with supporting reviews from Emily and Lucas","title":"[Task]: Migrate NOFO project plan to GitHub","number":443,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/443"},"id":"PVTI_lADOABZxns4ASDf3zgI5BK0","labels":["topic: product","project: grants.gov","level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"In Progress","story Points":2,"title":"[Task]: Migrate NOFO project plan to GitHub"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Summary\n\nPrepare a demo for the HHS team of options for the internal comms site and collaboration site for NOFO100. This demo should include a slide deck that outlines the requirements and options we're considering and (ideally) a mockup of what these various options could look like.\n\n### Acceptance criteria\n\n- [ ] A slide deck which outlines the requirements and recommendations has been created and shared with HHS stakeholders\r\n- [ ] Mockups of the comms site have been created in the following tools:\r\n - [x] GitBook\r\n - [ ] SharePoint (if we can get a sandbox account)\r\n- [ ] The slide deck and mockups have been presented to HHS leadership and we've reached a decision\r\n- [ ] An ADR ticket has been created to record this decision once it's been finalized","title":"[Task]: Demo of options for HHS internal comms site","number":446,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/446"},"id":"PVTI_lADOABZxns4ASDf3zgI6Bs8","labels":["topic: comms","project: nofo","level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"In Progress","story Points":3,"title":"[Task]: Demo of options for HHS internal comms site"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Description\r\n\r\nCreate a chart that shows the milestone burndown: % of tickets and/or points remaining within a given milestone over time\r\n\r\n### Acceptance Criteria\r\n\r\n- [ ] A chart exists which displays this metric for each sprint\r\n- [ ] There is a mechanism for updating that chart programmatically that multiple people can run\r\n","title":"[Task]: Milestone burndown v0 chart","number":314,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/314"},"id":"PVTI_lADOABZxns4ASDf3zgIFZSo","labels":["topic: data","project: grants.gov","level: task"],"milestone":{"title":"Sprint Reporting","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Milestone burndown v0 chart"},{"assignees":["widal001"],"content":{"type":"Issue","body":"","title":"[Task]: Sprint allocation v0 chart","number":315,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/315"},"id":"PVTI_lADOABZxns4ASDf3zgIFZS0","labels":["topic: data","project: grants.gov","level: task"],"milestone":{"title":"Sprint Reporting","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Sprint allocation v0 chart"},{"assignees":["widal001"],"content":{"type":"Issue","body":"","title":"[Task]: Sprint completion v0 chart","number":316,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/316"},"id":"PVTI_lADOABZxns4ASDf3zgIFZTM","labels":["topic: data","project: grants.gov","level: task"],"milestone":{"title":"Sprint Reporting","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Sprint completion v0 chart"},{"assignees":["widal001"],"content":{"type":"Issue","body":"","title":"[Task]: Sprint velocity v0 chart","number":317,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/317"},"id":"PVTI_lADOABZxns4ASDf3zgIFZTc","labels":["topic: data","project: grants.gov","level: task"],"milestone":{"title":"Sprint Reporting","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Sprint velocity v0 chart"},{"assignees":["widal001"],"content":{"type":"Issue","body":"","title":"[Task]: Lead/cycle time v0 chart","number":318,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/318"},"id":"PVTI_lADOABZxns4ASDf3zgIFZTo","labels":["topic: data","project: grants.gov","level: task"],"milestone":{"title":"Sprint Reporting","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Lead/cycle time v0 chart"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Summary\r\n\r\nNow that the group has settled on the following issue hierarchy: `milestone \u003e epic \u003e issue` we need to update our existing issue templates to reflect this new hierarchy and update the default labels.\r\n\r\n### Specification\r\n\r\nUpdate the list of issue templates to reflect this list\r\n\r\n1. Bug Report\r\n - Sections: No change\r\n - Labels: `bug`\r\n2. Feature Request\r\n - Sections: No change\r\n - Labels: `enhancement`\r\n3. Internal - Milestone\r\n - Sections\r\n - Description\r\n - Dependencies\r\n - Metrics\r\n - Definition of Done\r\n - Labels\r\n - `project: grants.gov`\r\n - `level: milestone`\r\n4. Internal - Epic\r\n - Sections\r\n - Description\r\n - Dependencies\r\n - Sub-Tasks\r\n - Definition of Done\r\n - Labels\r\n - `project: grants.gov`\r\n - `level: epic`\r\n5. Internal - Task\r\n - Sections: No Change\r\n - Labels: \r\n - `project: grants.gov`\r\n - `level: task`\r\n6. Internal - ADR\r\n - Sections: No Change\r\n - Labels\r\n - `project: grants.gov`\r\n - `docs: adr`\r\n - `level: task`\r\n7. Internal - Milestone Doc\r\n - Sections: No Change\r\n - Labels: \r\n - `docs: milestone`\r\n - `level: task`\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] The issue templates have been updated to reflect the requirements listed above\r\n- [ ] The GitHub conventions wiki page has been updated to reflect the requirements listed above\r\n- [ ] The project automations use the new labels to automatically add tickets to a project","title":"[Task]: Update issue templates with new hierarchy and labels","number":426,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/426"},"id":"PVTI_lADOABZxns4ASDf3zgI3KT4","labels":["project: grants.gov","level: task"],"milestone":{"title":"[Epic] Communications Implementation","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"In Progress","story Points":2,"title":"[Task]: Update issue templates with new hierarchy and labels"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Description\r\n\r\nCreate an ADR that documents answers the following questions about how we use GitHub Issues and GitHub Projects to manage and organize work within the project:\r\n\r\n- GitHub Issue Questions\r\n - What types of issues should we create templates for?\r\n - What are the primary labels we want to use to organize tickets?\r\n - How do we plan to use milestones and task lists to organize tickets hierarchically?\r\n - When should PRs be attached to issues? To milestones?\r\n- GitHub Project Questions\r\n - Do we want to use story points?\r\n - If so, what scale/intervals should we use for pointing tickets?\r\n - What are the primary views we want to support within GitHub projects?\r\n - What are the primary metrics we want to calculate with project data?\r\n\r\n### Approvers\r\n\r\n- @EOKENAVA \r\n- @sumiat \r\n- @widal001 \r\n- @lucasmbrown-usds \r\n- @sarahknoppA6 \r\n\r\n### Options\r\n\r\n_No response_\r\n\r\n### Decision Criteria\r\n\r\n_No response_\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: GitHub issues \u0026 project conventions","number":320,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/320"},"id":"PVTI_lADOABZxns4ASDf3zgIFcy0","labels":["docs: adr","project: grants.gov","level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Progress","story Points":3,"title":"[ADR]: GitHub issues \u0026 project conventions"},{"assignees":["widal001","sarahknoppA6"],"content":{"type":"Issue","body":"### Summary\n\nWork with the MH team to upgrade our GitBook trial instance to a Pro Plan before our free trial expires on 9/11/23.\n\n### Acceptance criteria\n\n- [ ] Our GitBook instance has been upgraded to the pro plan\r\n- [ ] We can add new members to our GitBook instance without re-negotiating a contract\r\n- [ ] The content we drafted during the trial period is still available in the upgraded plan","title":"[Task]: Upgrade to GitBook Pro Plan \u0026 confirm Slack plan","number":442,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/442"},"id":"PVTI_lADOABZxns4ASDf3zgI5AgM","labels":["topic: comms","project: grants.gov","level: task"],"milestone":{"title":"[Epic] Communications Implementation","description":"","dueOn":""},"planned Finish":"2023-09-08","repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Progress","story Points":3,"title":"[Task]: Upgrade to GitBook Pro Plan \u0026 confirm Slack plan"},{"assignees":["EOKENAVA"],"content":{"type":"Issue","body":"### Description\r\n\r\nDetermine the platform that we want to manage calendar events and availability.\r\n\r\n### Options\r\n\r\n- [Confluence](https://www.atlassian.com/software/confluence/team-calendars)\r\n- [Google Calendar](https://support.google.com/calendar/answer/37083?hl=en)\r\n- [Nextcloud Calendar](https://apps.nextcloud.com/apps/calendar)\r\n- Others as suggested by dev team\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **HHS Network Access:** Users on the HHS network can access this shared calendar\r\n- **Private Calendar Events:** Users can create and share calendar events that are only visible to designated groups of users\r\n- **Public Calendar Events:** Users can create and share calendar events that are visible to members of the public\r\n- **Video Conference Integration:** Users can add the details for a video conference to the calendar invite, and preferably create a new meeting-specific video conference link directly from the event creation page.\r\n- **Authority to Operate (ATO):** The platform must be covered under the Grants.gov Authority to Operate (ATO)\r\n\r\n#### Nice to Have\r\n\r\n- **Open Source:** The code used to host and run the calendar is open source\r\n- **Booking Link:** Users can create and share a link through which other users can view their availability and schedule a meeting\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)\r\n- [ ] The tool selected satisfies the following decision criteria (or there is a plan to cover the gaps):\r\n - [ ] HHS Network Access\r\n - [ ] Private Calendar Events\r\n - [ ] Public Calendar Events\r\n - [ ] Video Conference Integration\r\n - [ ] Authority to Operate","title":"[ADR]: Shared Calendar","number":100,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/100"},"id":"PVTI_lADOABZxns4ASDf3zgHqwmY","labels":["docs: adr","topic: comms","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/375"],"milestone":{"title":"Communication Platforms","description":"Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.","dueOn":"2023-08-23T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Progress","title":"[ADR]: Shared Calendar"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"### Description\r\n\r\nSetup ongoing meetings that are necessary for delivery across all teams working on grants.gov and NOFO simplification. Example meetings include Team of Teams level meetings like planning, burndown check-in, demos, retros, office hours/open discussion slots, milestone planning, and team-building.\r\n\r\n### Dependencies\r\n\r\nNone\r\n\r\n### Sub-Tasks\r\n\r\n- [ ] #221 \r\n\r\n### Definition of Done\r\n\r\n- [ ] [Milestone doc: Setup recurring meetings](https://github.com/HHS/grants-equity/pull/140)\r\n- [ ] Recurring meeting schedule established: Determine necessary meetings that need to take place for effective delivery across all teams - grants.gov and NOFO simplification. \r\n- [ ] Meeting invites sent\r\n- [ ] Meeting agendas defined: prepare clear agendas for each recurring meeting, outlining the topics to be discussed and desired outcomes. \r\n- [ ] Roles are set (facilitators, rotating MC, etc) \r\n- [ ] Team norming: continuously gather feedback from meeting participants to assess the effectiveness and value of the recurring meetings. ","title":"[Epic]: Setup recurring meetings","number":46,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/46"},"id":"PVTI_lADOABZxns4ASDf3zgIsbC8","labels":["milestone","topic: comms","project: grants.gov","level: epic"],"milestone":{"title":"FY23 Q4: Open source group kickoff","description":"","dueOn":"2023-09-27T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Progress","title":"[Epic]: Setup recurring meetings"},{"content":{"type":"Issue","body":"### Description\r\n\r\nRelated to #102 \r\n\r\nLet's find an appropriate solution to enforce immutability on the front end, prevent bugs and write maintainable code. This includes: choosing a tool and guidelines for enforcing.\r\n\r\n### Approvers\r\n\r\n@lucasmbrown-usds, @widal001, @SammySteiner, @acouch, @daphnegold \r\n\r\n### Options\r\n\r\n- [Lint solution](https://typescript-eslint.io/rules/prefer-readonly-parameter-types/)\r\n- [immutible.js](https://immutable-js.com/)\r\n- [TypeScript built-in](https://levelup.gitconnected.com/the-complete-guide-to-immutability-in-typescript-99154f859fdb)\r\n- Do nothing at all at this time\r\n\r\n### Decision Criteria\r\n\r\n_No response_\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: Enforcing immutability on the front end ","number":331,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/331"},"id":"PVTI_lADOABZxns4ASDf3zgIJzcE","labels":["docs: adr","topic: frontend"],"milestone":{"title":"[Epic]: Developer Tools","description":"Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.","dueOn":"2023-07-19T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[ADR]: Enforcing immutability on the front end "},{"assignees":["acouch"],"content":{"type":"Issue","body":"### Summary\n\n\r\nThe proposed front-end license checking tool needs to be configured. It's unclear if the license verification is robust enough to meet our needs regarding automation.\r\n\n\n### Acceptance criteria\n\n- [ ] Check that the solution is robust enough to automatically verify licensing checks\r\n- [ ] If a different tool is chosen, update ADR #102 \r\n- [ ] Configure Github Actions to run automatically","title":"[Task]: Front-end license checking","number":333,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/333"},"id":"PVTI_lADOABZxns4ASDf3zgIJ7Ow","labels":["project: grants.gov","level: epic"],"milestone":{"title":"[Epic]: Developer Tools","description":"Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.","dueOn":"2023-07-19T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","status":"Refinement","title":"[Task]: Front-end license checking"},{"content":{"type":"Issue","body":"### Summary \r\nWe need to release a Configuration Management Plan (CMP) for the first release of the static site in September. This CMP should meet the requirements under the SIA and SSP for our first release. Stretch goal is to consider any updates for the CMP for for the next version with the opportunities data.\r\n\r\n### Dependencies\r\n#459 \r\n#464 \r\n\r\n### Acceptance Criteria\r\n- [ ] CMP for first static site release is published and approved\r\n- [ ] Evaluate if there are different requirements for the CMP needed for the upcoming release with opportunities data. \r\n","title":"[Task]: Configuration Management Plan (CMP) for beta launch","number":465,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/465"},"id":"PVTI_lADOABZxns4ASDf3zgI8JZI","labels":["project: grants.gov"],"milestone":{"title":"[Epic] Security Approval for static site","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[Task]: Configuration Management Plan (CMP) for beta launch"},{"content":{"type":"Issue","body":"### Summary\n\n## Tool\r\n\r\nI would imagine that [cloudwatch synthetics](https://repost.aws/knowledge-center/cloudwatch-synthetics-performance) would be the preferred implementation, but that can be determined during the completion of the ticket.\r\n\r\n## Alerts\r\n\r\nI would imagine we would want one that pings the site frequently, returns the status code, and a text string to determine that the site is up. We could also setup alerts for health checks on the container.\r\n\r\nWe could potentially use the same alerts to provide metrics like overall up-time and site speed, but that is outside the scope of this.\r\n\r\n## Recipients\r\n\r\nThis would likely be individuals by email, phone, and / or a slack channel. This would likely be part of the IRP. This part of the task could be removed if it is determined that it is better to handle this in the IRP. This list should not be public.\n\n### Acceptance criteria\n\n- [ ] Tool for up-time monitoring determined\r\n- [ ] List of alerts determined\r\n- [ ] Recipients determined, but not publicly shared.","title":"[Task]: Determine Up-time monitoring tool, alerts, and alert recipients for static site","number":413,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/413"},"id":"PVTI_lADOABZxns4ASDf3zgIw4sc","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"[Epic] Security Approval for static site","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[Task]: Determine Up-time monitoring tool, alerts, and alert recipients for static site"},{"content":{"type":"Issue","body":"### Summary\n\nSetup the up-time monitoring alerts and notifications, based on the results of https://github.com/HHS/grants-equity/issues/413\r\n\r\nIf this is done in AWS, we would need to determine if this falls under IaC. \n\n### Acceptance criteria\n\n- [ ] Up-time monitoring setup\r\n- [ ] Alerts and notifications setup before launch","title":"[Task]: Setup Up-time Monitoring and Alerts for Static Site","number":414,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/414"},"id":"PVTI_lADOABZxns4ASDf3zgIw4pY","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[Task]: Setup Up-time Monitoring and Alerts for Static Site"},{"content":{"type":"Issue","body":"### Summary\r\n\r\nAn Incident Response Plan needs to be created for the static site. The initial work for this will involve gathering resources from Nava, MH, and HHS such as templates, previous IRPs, and other guidance.\r\n\r\n* What do to during actual incident\r\n* Technical documentation /. what is being monitored / links to logs\r\n* On-call documentation\r\n* Post-mordem\r\n\r\n### Existing Assets\r\n\r\n* https://docs.google.com/document/d/1OF9bhniWhJ-htx3cgUMFpPdBnvcrDm6Yb4BMJ5SaVT0/edit\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] IRP drafted, reviewed, and accepted.","title":"[Task]: Create Incident Response Plan","number":415,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/415"},"id":"PVTI_lADOABZxns4ASDf3zgIw5xI","labels":["project: grants.gov"],"milestone":{"title":"[Epic] Security Approval for static site","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[Task]: Create Incident Response Plan"},{"content":{"type":"Issue","body":"### Summary \r\nWe need to release a Contingency Plan (CP) for the first release of the static site in September. This CP should meet the requirements under the SIA and SSP for our first release. Stretch goal is to consider any updates for the CP for for the next version with the opportunities data.\r\n\r\n### Dependencies\r\n#459 \r\n#464 \r\n\r\n### Acceptance Criteria\r\n- [ ] CP for first static site release is published and approved\r\n- [ ] Evaluate if there are different requirements for the CP needed for the upcoming release with opportunities data. \r\n","title":"[Task]: Contingency Plan (CP) for beta launch","number":466,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/466"},"id":"PVTI_lADOABZxns4ASDf3zgI8JZM","labels":["project: grants.gov"],"milestone":{"title":"[Epic] Security Approval for static site","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Refinement","title":"[Task]: Contingency Plan (CP) for beta launch"},{"content":{"type":"Issue","body":"### Summary \r\nThe SIA will cover the approaches being used to launch [beta.grants.gov](http://beta.grants.gov/) as part of our overall [grants.gov](http://grants.gov/) system, and how those approaches fit within our existing [grants.gov](http://grants.gov/) SSP. This work identifies how our approaches might require changes to it the SSP and to document and note those changes and controls. \r\n\r\n### Acceptance Criteria\r\n- [ ] Make the necessary updates to the SSP and Asset Inventory, Catalog of Control in Appendix X for the first release of the static site. \r\n- [ ] Stretch goal: note future changes and updates for the opportunities so we can be better prepared for that in the future","title":"[Task]: SSP alignment for beta launch","number":464,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/464"},"id":"PVTI_lADOABZxns4ASDf3zgI8JRE","labels":["project: grants.gov"],"milestone":{"title":"[Epic] Security Approval for static site","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Refinement","title":"[Task]: SSP alignment for beta launch"},{"content":{"type":"Issue","body":"### Summary\r\n\r\nindex.tsx's getServerSideProps isn't covered with tests yet, which is pulling down our coverage %:\r\n![image](https://github.com/HHS/grants-equity/assets/25465464/680eb6c2-b107-4ea9-ad44-fe547d441cdf)\r\n\r\nWe want to write some tests for this to make sure props are being passed properly for server side rendering.\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Test Coverage for frontend/src/pages/index.tsx is \r\n![image](https://github.com/HHS/grants-equity/assets/25465464/b56b14a9-c2cd-43c6-bcf3-85e11f124cc8)\r\n\r\n### Notes or Open Questions\r\n- Consider whether this should ServerSideProps or StaticProps\r\n- Change this to getStaticProps if you're not using server-side rendering\r\nexport const getServerSideProps: GetServerSideProps = async ({ locale }) =\u003e {\r\n const translations = await serverSideTranslations(locale ?? \"en\");\r\n return { props: { ...translations } };\r\n};","title":"[Task]: Increase Test Coverage for Index.tsx","number":367,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/367"},"id":"PVTI_lADOABZxns4ASDf3zgIOZM0","labels":["project: grants.gov"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Increase Test Coverage for Index.tsx"},{"assignees":["sumiat"],"content":{"type":"PullRequest","body":"","title":"Create chat-adr","number":138,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/pull/138"},"id":"PVTI_lADOABZxns4ASDf3zgIoKtc","milestone":{"title":"Communication Platforms","description":"Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.","dueOn":"2023-08-23T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","reviewers":["widal001","lucasmbrown-usds"],"status":"Backlog","title":"Create chat-adr"},{"content":{"type":"Issue","body":"### Description\n\nExplore options for a way to host listserves according to the criteria listed below and select an option and document that choice as an ADR\r\n\r\n\n\n### Approvers\n\n@lucasmbrown-usds or @widal001 \r\n\n\n### Options\n\n- [Google Groups](https://support.google.com/groups/answer/46601?hl=en\u0026ref_topic=9216\u0026sjid=6954506169775690555-NA)\r\n- [GSA's listservs](http://listserv.gsa.gov/)\r\n- [Groups.io](https://groups.io/)\r\n- [Mailman GNU](https://list.org/)\r\n- [GroupServer](http://groupserver.org/)\r\n- Others as suggested by dev team\n\n### Decision Criteria\n\n- **Ease of use**: this will be used by HHS, contractors, and the general public and should be user-friendly and easy for both administrators and users to navigate, set up, and manage.\r\n- **Security**: The solution must prioritize strong security measures, consider encryption, user authentication, and protection against spam and phishing\r\n- **Cost**: Evaluate the cost implications as this tool will be used by HHS, contractors, and the general public. \r\n- **Features**: Consider features such as email list management, subscription options, message archiving, and customizable templates to meet the communication needs of your project.\r\n- **Scalability**: Ensure the solution can handle potential growth in subscribers and messages as your project expands without sacrificing performance.\r\n\r\nNice to have\r\n- **Community engagement**: Opt for a solution that encourages active participation, discussion, and collaboration within the open-source community.\r\n- **Open source**: Consider a solution that aligns with the open-source philosophy of your project, allowing for transparency, customization, and community contributions.\r\n- **Customization**: Choose a platform that allows you to customize the appearance and functionality of the listserves to match your project's branding and communication needs.\n\n### Definition of Done\n\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\n- [ ] The ADR has been reviewed and approved by the approvers listed above\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: Listserv","number":378,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/378"},"id":"PVTI_lADOABZxns4ASDf3zgIoM8g","labels":["docs: adr","project: grants.gov"],"milestone":{"title":"Communication Platforms","description":"Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.","dueOn":"2023-08-23T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Sprint Backlog","story Points":3,"title":"[ADR]: Listserv"},{"assignees":["acouch","sumiat"],"content":{"type":"Issue","body":"### Summary\n\nGoal: find out which applications from [grants.gov](http://grants.gov/) are getting actual awards. This will help us build our analytics funnels for understanding the effectiveness of our changes to both [grants.gov](http://grants.gov/) and NOFOs.\r\n\r\nWe can get this information from using the Funding Opportunity Number (FON) that is available in both [grants.gov](http://grants.gov/) and USAspending/DAIMS (i.e., the unique identifier of an individual Notice of Funding Opportunity or NOFO) to match the data of applications from [grants.gov](http://grants.gov/) to the data of awardees from USASpending.\r\n\r\nTo do this, we will need to: \r\n- Get access to the application data from [grants.gov](http://grants.gov/) \r\n- Download the existing data from USASpending.gov (as described below), which will have some but not all Funding Opportunity Numbers (FONs) listed\r\n- Attempt to match this data as a beginning analysis of which applications are receiving awards\r\n\r\n### Notes\r\n - Funding Opportunity Number (FON) becomes a required field for USASpending on October 1 2023\r\n - FON numbers are available here: https://www.usaspending.gov/download_center/award_data_archive\n\n### Acceptance criteria\n\n- [ ] Get a list of applications that are actually getting awards","title":"[Task]: Analysis of grant awards","number":386,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/386"},"id":"PVTI_lADOABZxns4ASDf3zgIppMc","labels":["topic: data","project: grants.gov","level: epic"],"milestone":{"title":"FY24 Q1: Public measurement dashboard","description":"","dueOn":"2023-12-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Blocked","title":"[Task]: Analysis of grant awards"},{"assignees":["sumiat"],"content":{"type":"Issue","body":"### Summary\n\nWe selected Slack as the chat tool of choice in the #105. This work is to set up an onboarding process so that users can easily onboard to Slack, start using it, and navigate the tool easily. \n\n### Acceptance criteria\n\n - [x] Onboarding instructions for new users are clearly and accessibly documented in a public place.\n - [x] Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\n - [ ] At least 5 members of HHS full-time staff have been onboarded.\n - [x] At least 5 members of contractor teams (employed by HHS) have been onboarded.\n - [x] New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\n - [x] Services are accessible to all people on the HHS network, public internet, and *preferably* the White House network and most or all agency networks\n\n### out of scope\n* Onboarding the general public\n","title":"[Task]: Slack Implementation","number":379,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/379"},"id":"PVTI_lADOABZxns4ASDf3zgIoOtA","labels":["documentation","project: grants.gov","level: epic"],"milestone":{"title":"[Epic] Communications Implementation","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Review","title":"[Task]: Slack Implementation"},{"assignees":["acouch","sumiat"],"content":{"type":"Issue","body":"### Summary\n\nAs part of the preparation for the upcoming static site launch, we need to establish a comprehensive list of launch activities, assigning ownership to each activity and setting clear timelines for their completion. This plan will ensure a smooth and successful launch, covering aspects of the release process.\n\n### Acceptance criteria\n\n- [ ] document outlining launch activities, owners, and timelines.\r\n- [ ] Clear communication strategy for stakeholders / owners identified in launch\r\n- [ ] A backup and rollback plan in case of unexpected issues","title":"[Task]: Create launch activities plan for static site release","number":401,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/401"},"id":"PVTI_lADOABZxns4ASDf3zgIvgm8","labels":["project: grants.gov","level: epic"],"milestone":{"title":"[Epic]: beta.grants.gov domain","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Review","story Points":5,"title":"[Task]: Create launch activities plan for static site release"},{"assignees":["acouch"],"content":{"type":"Issue","body":"### Description\r\n\r\nThis ADR will record the devision for branch naming conventions and release workflow. This may be combined with #112 , but it has been useful internally to treat them as separate tasks.\r\n\r\n### Approvers\r\n\r\n@acouch \r\n@widal001 \r\n@daphnegold \r\n@lucasmbrown-usds (optional) \r\n\r\n\r\n### Options\r\n\r\n_No response_\r\n\r\n### Decision Criteria\r\n\r\n_No response_\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: Branch conventions and release workflow","number":185,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/185"},"id":"PVTI_lADOABZxns4ASDf3zgH3zzo","labels":["docs: adr","project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/425"],"milestone":{"title":"[Epic]: Developer Tools","description":"Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.","dueOn":"2023-07-19T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[ADR]: Branch conventions and release workflow"},{"assignees":["acouch"],"content":{"type":"Issue","body":"### Summary\r\n\r\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Grants Equity repo in sections such as, [README.md](https://github.com/HHS/grants-equity/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/grants-equity/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Grants Equity repo README with the [README](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.d3gpx7y17a2p) section from the OS runbook. \r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Review the content in the [README](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.d3gpx7y17a2p) and update the content to make relevant for the Grants Equity project where needed\r\n- [ ] Add content in the [Grants Equity README](https://github.com/HHS/grants-equity/blob/main/README.md)","title":"[Task]: Update README with open source runbook content","number":402,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/402"},"id":"PVTI_lADOABZxns4ASDf3zgIvhOI","labels":["project: grants.gov","level: epic"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/433"],"milestone":{"title":"[Epic]: Open Source Onboarding and Repository Configuration","description":"Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Review","story Points":3,"title":"[Task]: Update README with open source runbook content"},{"assignees":["acouch"],"content":{"type":"Issue","body":"### Description\r\n\r\nIn order to streamline the development workflow, it would be helpful to establish a set of common standards or conventions around our use of GitHub and git. The goal of this ADR is to establish and document those conventions as well as recommend possible tools to help enforce these standards.\r\n\r\nThis ADR should address the following topics:\r\n\r\n- Branch naming conventions\r\n- Merge strategy \u0026 conventions\r\n- Commit conventions\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: Git Conventions","number":112,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/112"},"id":"PVTI_lADOABZxns4ASDf3zgHrEfo","labels":["docs: adr","topic: frontend","topic: backend","project: grants.gov"],"milestone":{"title":"[Epic]: Developer Tools","description":"Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.","dueOn":"2023-07-19T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","story Points":2,"title":"[ADR]: Git Conventions"},{"assignees":["acouch"],"content":{"type":"Issue","body":"### Summary\n\nSummary\r\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Grants Equity repo in sections such as, [README.md](https://github.com/HHS/grants-equity/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/grants-equity/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Grants Equity repo README with the [Core Team](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.h8u4lot1gkaa) section from the OS runbook.\r\n\r\n \n\n### Acceptance criteria\n\n- [ ] Review the content in the [Core Team](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.h8u4lot1gkaa) and update the content to make relevant for the Grants Equity project where needed\r\n- [ ] Add content in the [Grants Equity README](https://github.com/HHS/grants-equity/blob/main/README.md) section","title":"[Task]: Update \"Core Team\" with open source runbook content","number":403,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/403"},"id":"PVTI_lADOABZxns4ASDf3zgIvhyA","labels":["project: grants.gov","level: epic"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/427"],"milestone":{"title":"[Epic]: Open Source Onboarding and Repository Configuration","description":"Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","story Points":3,"title":"[Task]: Update \"Core Team\" with open source runbook content"},{"content":{"type":"Issue","body":"### Summary\n\nHook up our public facing URL :D \r\n\r\nBlocked by #299\n\n### Acceptance criteria\n\n- Visiting beta.grants.gov shows static site","title":"[Task]: Hook up beta.grants.gov","number":384,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/384"},"id":"PVTI_lADOABZxns4ASDf3zgIpeDg","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"[Epic]: beta.grants.gov domain","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[Task]: Hook up beta.grants.gov"},{"assignees":["andycochran"],"content":{"type":"Issue","body":"### Summary\n\nSize the content appropriately for various screen sizes. \n\n### Acceptance criteria\n\n_No response_","title":"[Task]: Update typography based on responsive layout","number":382,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/382"},"id":"PVTI_lADOABZxns4ASDf3zgIpmqI","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/383"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[Task]: Update typography based on responsive layout"},{"assignees":["daphnegold","SammySteiner"],"content":{"type":"Issue","body":"### Summary\n\nIssues in AWS ecs longs due to failed image caching.\r\n\r\n![Screenshot 2023-08-18 at 1 14 17 PM](https://github.com/HHS/grants-equity/assets/25465464/9c62f588-98fb-4046-8554-e09af0c1c0bb)\r\n\r\nMore info: https://nextjs.org/docs/messages/sharp-missing-in-production\n\n### Acceptance criteria\n\n- Image Caching works as expected\r\n- No image caching errors in the ecs logs","title":"[Task]: Production Image Caching issue","number":390,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/390"},"id":"PVTI_lADOABZxns4ASDf3zgIrrew","linked pull requests":["https://github.com/HHS/grants-equity/pull/393"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[Task]: Production Image Caching issue"},{"assignees":["acouch"],"content":{"type":"Issue","body":"### Description\n\nSelect and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebases.\n\n### Dependencies\n\n- [x] #42 \n- [x] #49 \n\n### Sub-Tasks\n\n- [x] #20 \n- [x] #102 \n- [x] #101 \n- [x] #92 \n- [x] #110 \n- [x] #109 \n\n### Definition of Done\n\nFor all the tools: \n ADRs documenting the selection of these tools and standards have been created and approved:\n - [x] **Automated testing framework**\n - [x] **Code quality checks** \n- [x] **Security checks** \n- [x] **Dependency management** \n- [x] **Config \u0026 secrets management** ","title":"[Epic]: Developer tools planning","number":50,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/50"},"id":"PVTI_lADOABZxns4ASDf3zgIsHDw","labels":["milestone","topic: frontend","topic: backend","project: grants.gov","level: epic"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","status":"Done","title":"[Epic]: Developer tools planning"},{"assignees":["sumiat"],"content":{"type":"Issue","body":"### Summary\n\nCreate a list of potential FAQs and answers that can be used by the Help Desk / Support staff or as a future FAQ page on the beta.grants.gov site. \n\n### Acceptance criteria\n\n- [ ] Document with FAQs\r\n- [ ] Approval of content to go through the standard content approval process","title":"[Task]: Help Center FAQ sheet and transcript","number":400,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/400"},"id":"PVTI_lADOABZxns4ASDf3zgIverI","labels":["project: grants.gov","level: epic"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Progress","story Points":5,"title":"[Task]: Help Center FAQ sheet and transcript"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\n\nNext.js app is missing `wget` install in Dockerfile. The fix is already known. Pull in this and other changes from the template to update app.\n\n### Acceptance criteria\n\n- App passes health check in AWS!","title":"[Task]: Failing health check for next.js app","number":394,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/394"},"id":"PVTI_lADOABZxns4ASDf3zgIsbss","labels":["topic: frontend"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/395"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 4","startDate":"2023-08-09","duration":14},"status":"Done","title":"[Task]: Failing health check for next.js app"},{"content":{"type":"PullRequest","body":"## Summary\r\n\r\nFixes #396\r\n\r\n### Time to review: __5 mins__\r\n\r\n## Changes proposed\r\n\r\n- Updates text strings per approved content\r\n\r\n## Context for reviewers\r\n\r\nComponents were developed with draft content. This PR updates them all to the latest approved content. \r\n\r\n## Additional information\r\n\r\nI'm not sure if we should take a more robust snapshot of the index page content. I don't think we're using snapshots in this app yet, but we could do something like… \r\n\r\n```\r\n it(\"renders content\", () =\u003e {\r\n const page = render(\u003cIndex /\u003e);\r\n\r\n expect(page).toMatchSnapshot();\r\n });\r\n```\r\n\r\n…tho that snaps quite a lot. Lemme know if you have thoughts. ","title":"[Issue: 396] Update content","number":405,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/pull/405"},"id":"PVTI_lADOABZxns4ASDf3zgIvtl4","labels":["project: grants.gov","level: epic"],"milestone":{"title":"[Epic]: Foundational UI","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","reviewers":["acouch","daphnegold","SammySteiner"],"status":"Done","title":"[Issue: 396] Update content"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\r\n\r\nMissed that `APP_NAME` wasn't defined in the `build-and-publish.yml`. More work will be done on this topic in #285 \r\n\r\n### Acceptance criteria\r\n\r\n- Define `APP_NAME`\r\n\u003cimg width=\"1482\" alt=\"Screenshot 2023-08-23 at 2 53 24 PM\" src=\"https://github.com/HHS/grants-equity/assets/13158571/5f58314f-f1b8-45bb-90d4-ed2b7b7938d0\"\u003e\r\n","title":"[Task]: Fix deploy Github Actions workflow","number":406,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/406"},"id":"PVTI_lADOABZxns4ASDf3zgIvzKI","labels":["topic: infra"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/407"],"milestone":{"title":"[Epic] Infrastructure-as-Code","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Fix deploy Github Actions workflow"},{"content":{"type":"Issue","body":"### Summary\n\nLet's check for broken links! Suggest we use a tool implemented into Github Actions pipeline from [marketplace](https://github.com/marketplace/actions/markdown-link-check)\r\n\r\nExample: https://github.com/usds/justice40-tool/blob/c7dd4f20d7e930e734aab3c4f143a396a3f586e6/.github/workflows/markdown-link-check.yml#L4\n\n### Acceptance criteria\n\n- [ ] Integrate markdown link check tool\r\n- [ ] Update associated ADRs #102 #101 ","title":"[Task]: Markdown link checker","number":335,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/335"},"id":"PVTI_lADOABZxns4ASDf3zgIJ-vU","labels":["topic: infra","project: grants.gov"],"milestone":{"title":"[Epic]: Developer Tools","description":"Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.","dueOn":"2023-07-19T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[Task]: Markdown link checker"},{"content":{"type":"Issue","body":"### Summary\n\nThis project uses Auto Scaling to efficiently respond to traffic spikes. This has been setup, but not configured for launch.\r\n\r\nExisting traffic patterns for grants.gov would be a good metric to gauge the configuration.\n\n### Acceptance criteria\n\n- [ ] AWS Auto Scaling is updated for launch","title":"[Task]: Configure Autoscaling for Static site for launch","number":417,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/417"},"id":"PVTI_lADOABZxns4ASDf3zgIxF_s","labels":["topic: infra"],"milestone":{"title":"[Epic] Security Approval for static site","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Configure Autoscaling for Static site for launch"},{"content":{"type":"Issue","body":"### Summary\r\n\r\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Grants Equity repo in sections such as, [README.md](https://github.com/HHS/grants-equity/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/grants-equity/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Grants Equity repo Community.md with the [Community organization and governance](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.j7smidyjn9t0) section from the OS runbook.\r\n\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Review the content in the [Community Organization and Governance](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.j7smidyjn9t0) and update the content to make relevant for the Grants Equity project where needed\r\n- [ ] Create community.md section and add content in the Community.md section","title":"[Task]: Community Organization and Governance ","number":419,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/419"},"id":"PVTI_lADOABZxns4ASDf3zgIxT8w","labels":["project: grants.gov","level: epic"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/432"],"milestone":{"title":"[Epic]: Open Source Onboarding and Repository Configuration","description":"Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Done","title":"[Task]: Community Organization and Governance "},{"assignees":["acouch"],"content":{"type":"Issue","body":"### Summary\n\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Grants Equity repo in sections such as, [README.md](https://github.com/HHS/grants-equity/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/grants-equity/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Grants Equity repo README with the [Core Team](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.h8u4lot1gkaa) section from the OS runbook.\r\n\r\nFor this ticket, [CONTRIBUTING.md](https://github.com/HHS/grants-equity/blob/main/CONTRIBUTING.md) should be updated with the results of #185 and to incorporate content from the open source runbook.\r\n\n\n### Acceptance criteria\n\n- [ ] CONTRIBUTING.md is complete\r\n- [ ] CONTRIBUTING.md incorporates #185 \r\n- [ ] CONTRIBUTING.md incorporates open source runbook content","title":"[Task]: Update CONTRIBUTING.md with results of branch ADR and with open source runbook content","number":416,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/416"},"id":"PVTI_lADOABZxns4ASDf3zgIxWxg","labels":["project: grants.gov","level: epic"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/431"],"milestone":{"title":"[Epic]: Open Source Onboarding and Repository Configuration","description":"Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Update CONTRIBUTING.md with results of branch ADR and with open source runbook content"},{"assignees":["acouch"],"content":{"type":"Issue","body":"### Summary\r\n\r\nThe proposed back-end license checking tool, [license-check](https://pypi.org/project/pip-licenses/#verify-options), needs to be configured. It's unclear if the license verification is robust enough to meet our needs regarding automation.\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Check that pip-licenses is robust enough to automatically verify licensing checks (if not, consider another tool like [liccheck](https://pypi.org/project/liccheck/))\r\n- [ ] If a different tool is chosen, update ADR #101 \r\n- [ ] Configure Github Actions to run automatically\r\n\r\n### Open Questions or Notes\r\n- This helps to ensure all the licenses are good and check automatically. \r\n- What is the driving request behind this? What does a good outcome for this look like? Is it enough to ask, we want to use this new library, would that work? @acouch \r\n- Exclude certain licenses that are incompatible with open source. ","title":"[Task]: Back-end license checking","number":238,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/238"},"id":"PVTI_lADOABZxns4ASDf3zgH7Uq4","labels":["topic: backend","project: grants.gov"],"milestone":{"title":"[Epic]: Developer Tools","description":"Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.","dueOn":"2023-07-19T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[Task]: Back-end license checking"},{"content":{"type":"Issue","body":"### Summary\r\n\r\nInfrastructure ADRs from the Nava Infra Template were recently pulled into the project: https://github.com/HHS/grants-equity/tree/main/documentation/decisions\r\n\r\nThey could either be brought into the current ADR folder, and we continue to maintain a flat directory, or we could maintain the `infra` folder, and create folder for other similar project groupings.\r\n\r\nIf we decide the latter, I would propose the following folders:\r\n\r\n```\r\napi/ \r\nfrontend/\r\ninfra/\r\nprocess/\t\r\ntool/\r\n```\r\n\r\nSince the list is getting so long, I would also recommend introducing an `index.md` that is updated by [adr-log](https://github.com/adr/adr-log).\r\n\r\nThis ticket is also an opportunity to clean up some of the ADRs as some are missing titles.\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] ADRs all in the same folder or in agreed upon folders\r\n- [ ] index.md added with adr-log tool support\r\n- [ ] ADRs have consistent names and titles\r\n- [ ] Other minor doc nits are addressed if necessary","title":"[Task]: Clean Up and Re-Organize ADRs","number":424,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/424"},"id":"PVTI_lADOABZxns4ASDf3zgIyX18","labels":["documentation","docs: adr","project: grants.gov"],"milestone":{"title":"[Epic] Communications Implementation","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[Task]: Clean Up and Re-Organize ADRs"},{"content":{"type":"Issue","body":"### Summary\n\n[Pre-commit](https://github.com/HHS/grants-equity/blob/main/.pre-commit-config.yaml) has been added to the project. The api, frontend, and infra components have since been added to the project. Each of these has a linter ([infra's](https://github.com/navapbc/template-infra/blob/main/Makefile#L129) can be re-introduced) and tests that can be added to pre-commit so that tests and lints for specific file types can be run before committing.\r\n\r\nThis will save time, for both committers and code reviewers, as changes won't be introduced before linters and tests have been run and is widely adopted as a best practice.\n\n### Acceptance criteria\n\n- [ ] linters and tests have been added to pre-commit\r\n- [ ] documentation is updated","title":"[Task]: Add Linters and Testers to Pre Commit","number":429,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/429"},"id":"PVTI_lADOABZxns4ASDf3zgI2bbo","labels":["project: grants.gov"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Add Linters and Testers to Pre Commit"},{"content":{"type":"Issue","body":"### Summary\n\nThe development site does not have any sensitive information or artifacts as all of the code and the workflow to generate it is public. We want the dev site to be accessible to non-technical reviewers. However, we do not want the development site to be indexed, linked to, or confused by the general public as the production site. It is OK for the password or URL to be in code or even in the documentation.\r\n\r\nThis could be implemented by:\r\n\r\n* feature flags\r\n* htpasswd\r\n* AWS auth mechanism\r\n\r\n\n\n### Acceptance criteria\n\n- [ ] development site hidden\r\n- [ ] documentation updated","title":"[Task]: Hide access to development site","number":430,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/430"},"id":"PVTI_lADOABZxns4ASDf3zgI2cgs","labels":["project: grants.gov"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Hide access to development site"},{"assignees":["andycochran"],"content":{"type":"Issue","body":"### Summary\n\nMore prominently display a link to this GitHub repository at the top of the site.\n\n### Acceptance criteria\n\n_No response_","title":"[Task]: Add GitHub CTA to the top of site","number":440,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/440"},"id":"PVTI_lADOABZxns4ASDf3zgI42Mk","labels":["level: task"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/441"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","story Points":1,"title":"[Task]: Add GitHub CTA to the top of site"},{"content":{"type":"Issue","body":"### Summary\n\nThere are suggestions for vscode settings for the front-end, but not the API.\r\n\r\nThis ticket is to evaluate adding settings and / or extension settings as sensible defaults for front-end dev.\n\n### Acceptance criteria\n\n- [ ] API README.md is updated to include editor suggestions\r\nor\r\n- [ ] No suggestions are deemed useful to include","title":"[Task]: Add code editor suggestions to API README.md","number":392,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/392"},"id":"PVTI_lADOABZxns4ASDf3zgI5Afo","labels":["topic: backend"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Add code editor suggestions to API README.md"},{"content":{"type":"Issue","body":"### Summary\n\n\r\nWe selected Github as the ticketing tool of choice in the #98 ADR. This work is to set up an onboarding process so that users can easily onboard to Github, start using it, and navigate the tool easily.\r\n\r\n\r\n \n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks","title":"[Task]: Ticket Tracking Implementation ","number":408,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/408"},"id":"PVTI_lADOABZxns4ASDf3zgI5Afw","labels":["documentation","project: grants.gov","level: epic"],"milestone":{"title":"[Epic] Communications Implementation","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Ticket Tracking Implementation "},{"content":{"type":"Issue","body":"### Summary\n\nWe selected TBD as the shared calendar tool of choice in the TBD ticket. This work is to set up an onboarding process so that users can easily onboard to TBD, start using it, and navigate the tool easily.\n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks","title":"[Task]: Shared Calendar Implementation","number":409,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/409"},"id":"PVTI_lADOABZxns4ASDf3zgI5Af0","labels":["documentation","project: grants.gov","level: epic"],"milestone":{"title":"[Epic] Communications Implementation","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Shared Calendar Implementation"},{"content":{"type":"Issue","body":"### Summary\n\nWe selected TBD as the Video Conference tool of choice in the TBD ticket. This work is to set up an onboarding process so that users can easily onboard to TBD, start using it, and navigate the tool easily.\n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks","title":"[Task]: Video Conference Implementation","number":410,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/410"},"id":"PVTI_lADOABZxns4ASDf3zgI5Af4","labels":["documentation","project: grants.gov","level: epic"],"milestone":{"title":"[Epic] Communications Implementation","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Video Conference Implementation"},{"content":{"type":"Issue","body":"### Summary\n\nWe selected Gitbook as the shared calendar tool of choice in the #30 ticket. This work is to set up an onboarding process so that users can easily onboard to Gitbook, start using it, and navigate the tool easily.\r\n\r\n\n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks","title":"[Task]: Wiki Implementation","number":411,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/411"},"id":"PVTI_lADOABZxns4ASDf3zgI5AgA","labels":["documentation","project: grants.gov","level: epic"],"milestone":{"title":"[Epic] Communications Implementation","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Wiki Implementation"},{"content":{"type":"Issue","body":"### Summary\n\nWe selected TBD as the Retrospective tool of choice in the TBD ticket. This work is to set up an onboarding process so that users can easily onboard to TBD, start using it, and navigate the tool easily.\r\n\r\n\n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks","title":"[Task]: Retro Implementation","number":412,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/412"},"id":"PVTI_lADOABZxns4ASDf3zgI5AgE","labels":["project: grants.gov","level: epic"],"milestone":{"title":"[Epic] Communications Implementation","description":"","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Retro Implementation"},{"content":{"type":"Issue","body":"### Summary\r\n\r\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Grants Equity repo in sections such as, [README.md](https://github.com/HHS/grants-equity/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/grants-equity/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Grants Equity repo README with the [Onboarding and Engagement](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.rs17iqwr9xdg) section from the OS runbook.\r\n\r\nFor this ticket, [README.md](https://github.com/HHS/grants-equity/blob/main/README.md) should be updated with the results of #185 and to incorporate content from the open source runbook.\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Review the content in the [Community Organization and Governance](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.j7smidyjn9t0) section and update the content to make relevant for the Grants Equity project where needed\r\n- [ ] Add content to the README.md. If there is a more appropriate location in the repo for this, the person working on the ticket can add it there. ","title":"Onboarding and Engagement","number":420,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/420"},"id":"PVTI_lADOABZxns4ASDf3zgI5AgI","labels":["project: grants.gov","level: epic"],"milestone":{"title":"[Epic]: Open Source Onboarding and Repository Configuration","description":"Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)","dueOn":""},"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"Onboarding and Engagement"},{"assignees":["widal001","sumiat"],"content":{"type":"Issue","body":"### Summary\r\n\r\nIn preparation for the start of more formal project reporting we want to audit the existing GitHub tickets and ensure they are following the conventions outlined in [the GitHub conventions wiki page](https://app.gitbook.com/o/cFcvhi6d0nlLyH2VzVgn/s/v1V0jIH7mb7Yb3jlNrgk/collaborating/how-we-communicate/github)\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] The following label conditions are satisfied:\r\n - [ ] Every issue is tagged with (at least) one of the `project:` labels\r\n - [ ] Every issue is tagged with exactly one `level:` label and these labels are applied according to the following logic:\r\n - [ ] Issues have the `level: milestone` label if and only if they are prefixed with `[Milestone]:`\r\n - [ ] Issues have the `level: epic` label if and only if they are prefixed with `[Epic]:` \r\n - [ ] All other issues have the `level: task` label and begin with one of the following prefixes:\r\n - `[Task]` for general task-level tickets\r\n - `[ADR]` for Architecture Decision Record tickets\r\n - `[Milestone doc]:` for milestone doc tickets\r\n- [ ] The following project conditions are satisfied:\r\n - [ ] The [milestone roadmap project](https://github.com/orgs/HHS/projects/12/views/3) contains all issues (and only issues) prefixed with either `[Milestone]:` or `[Epic]` and have the `level: milestone` or `level: epic` labels\r\n - [ ] The [sprint planning](https://github.com/orgs/HHS/projects/13/views/1) project contains all issues (and only issues) that have the `level: task` labels\r\n - [ ] All issues from previous sprints are closed or have been moved to a future sprint\r\n - [ ] All issues in the current sprint that are in progress, in review, or done have been pointed\r\n- [ ] The following milestone conditions are satisfied:\r\n - [ ] Each `level: milestone` and `level: epic` issue has a corresponding GitHub milestone \r\n - [ ] Each `level: epic` issue have been added to the GitHub milestone of its parent `level: milestone` issue\r\n - [ ] Each `level: task` issue have been added to the GitHub milestone of its parent `level: epic` issue","title":"[Task]: Clean up and audit existing tickets","number":444,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/444"},"id":"PVTI_lADOABZxns4ASDf3zgI5DVU","labels":["topic: product","project: grants.gov","level: task"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Clean up and audit existing tickets"},{"content":{"type":"Issue","body":"### Summary\n\nAs we prepare to launch the beta version of grants.gov, it is crucial to ensure that our help desk staff are well-equipped to assist users effectively. This ticket is to initiate the process of providing training to the help desk team on the new beta site.\r\n\r\n\r\n### Dependencies\r\n* Help Desk team and coordination\n\n### Acceptance criteria\n\n\r\n- [ ] Develop training curriculum / FAQ doc for the help desk staff regarding the features, functionality, and purpose of the beta site.\r\n- [ ] Include step-by-step guides for common user inquiries and issues that may arise during the beta site usage.\r\n- [ ] Schedule a training session with the help desk team to deliver the training content and address any questions or concerns.\r\n- [ ] Gather feedback from the help desk staff after the training session to identify any areas that may require further clarification or additional training.","title":"[Task]: Help Desk Training","number":445,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/445"},"id":"PVTI_lADOABZxns4ASDf3zgI5HMY","labels":["project: grants.gov"],"milestone":{"title":"FY23 Q4: Static Site Launch with NOFO Content","description":"Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events","dueOn":"2023-09-13T00:00:00Z"},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Sprint Backlog","title":"[Task]: Help Desk Training"},{"content":{"type":"Issue","body":"### Comms Follow Up\n\n- [x] Send email\n- [ ] Send pigeon","title":"Deliver guide to group writing exercise","number":447,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/447"},"id":"PVTI_lADOABZxns4ASDf3zgI6Ow4","repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"Deliver guide to group writing exercise"},{"assignees":["widal001"],"content":{"type":"Issue","body":"","title":"[Task]: Train HHS staff on GitBook","number":467,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/467"},"id":"PVTI_lADOABZxns4ASDf3zgI6Z_4","labels":["project: nofo","level: task"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Train HHS staff on GitBook"},{"assignees":["widal001"],"content":{"type":"Issue","body":"","title":"[Task]: Decide Grants.gov visualization for status report","number":468,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/468"},"id":"PVTI_lADOABZxns4ASDf3zgI6anY","labels":["level: task"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Decide Grants.gov visualization for status report"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task]: Staff training on agile development","number":479,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/479"},"id":"PVTI_lADOABZxns4ASDf3zgI6avE","repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Staff training on agile development"},{"assignees":["lucasmbrown-usds","sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task]: Collaborate with Gartner on OMB briefing","number":480,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/480"},"id":"PVTI_lADOABZxns4ASDf3zgI6aw4","repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Collaborate with Gartner on OMB briefing"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[ADR]: Unconference tools for Team of Teams","number":455,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/455"},"id":"PVTI_lADOABZxns4ASDf3zgI6az0","labels":["level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Progress","title":"[ADR]: Unconference tools for Team of Teams"},{"assignees":["widal001","lucasmbrown-usds","sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task]: 3-month plan for project","number":469,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/469"},"id":"PVTI_lADOABZxns4ASDf3zgI6a3o","labels":["level: task"],"repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: 3-month plan for project"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task]: Generate weekly report for MH","number":456,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/456"},"id":"PVTI_lADOABZxns4ASDf3zgI6bD0","labels":["level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Generate weekly report for MH"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task]: Automate weekly report for MH","number":481,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/481"},"id":"PVTI_lADOABZxns4ASDf3zgI6bNI","repository":"https://github.com/HHS/grants-equity","status":"Backlog","title":"[Task]: Automate weekly report for MH"},{"assignees":["widal001","sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task]: Get A6 into HHS Teams","number":457,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/457"},"id":"PVTI_lADOABZxns4ASDf3zgI6bZk","labels":["project: nofo","level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Progress","title":"[Task]: Get A6 into HHS Teams"},{"assignees":["widal001"],"content":{"type":"Issue","body":"### Description\n\nCreate a dry-run version of the bi-weekly status report and review it in the NOFO Transformation Team of Teams weekly meeting.\n\n### Acceptance Criteria\n\n- [x] A copy of the bi-weekly status report has been created with the following content\n - [x] Past two weeks\n - [x] Next four weeks\n - [x] Grants.gov progress to goals\n- [x] This draft document has been reviewed with the NOFO Transformation Team of Teams","title":"[Task]: Dry run of status report","number":450,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/450"},"id":"PVTI_lADOABZxns4ASDf3zgI6aTc","labels":["level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Dry run of status report"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task] Agenda and Unconf Board for ToT + Open Discussion","number":460,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/460"},"id":"PVTI_lADOABZxns4ASDf3zgI8AVM","labels":["level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"In Progress","title":"[Task] Agenda and Unconf Board for ToT + Open Discussion"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task]: Meet with Sumi for long-term plan and deadlines","number":475,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/475"},"id":"PVTI_lADOABZxns4ASDf3zgI6bOE","repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Backlog","title":"[Task]: Meet with Sumi for long-term plan and deadlines"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"","title":"[Task]: Securing HHS email for A6 team","number":476,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/476"},"id":"PVTI_lADOABZxns4ASDf3zgI6bQc","repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Backlog","title":"[Task]: Securing HHS email for A6 team"},{"assignees":["widal001"],"content":{"type":"Issue","body":"","title":"[Task]: Set up P\u0026D board for scrum/reporting","number":470,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/470"},"id":"PVTI_lADOABZxns4ASDf3zgI6bdE","labels":["level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Done","title":"[Task]: Set up P\u0026D board for scrum/reporting"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"Review proposed meeting schedule with Elizabeth, Camille, and Gartner and get a finalized proposal for regular NOFO-related and Equity-initiative related meetings.","title":"[Task] Review Proposed NOFO Meeting List w/Stakeholders","number":478,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/478"},"id":"PVTI_lADOABZxns4ASDf3zgI8A0A","repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Backlog","title":"[Task] Review Proposed NOFO Meeting List w/Stakeholders"},{"assignees":["widal001"],"content":{"type":"Issue","body":"Finalize NOFO100 per-Nofo-steps with Elizabeth and Camille and put into GitHub","title":"[Task] Finalize per-NOFO NOFO100 Steps","number":471,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/471"},"id":"PVTI_lADOABZxns4ASDf3zgI8A38","labels":["project: nofo","level: task"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Backlog","title":"[Task] Finalize per-NOFO NOFO100 Steps"},{"assignees":["sarahknoppA6"],"content":{"type":"Issue","body":"Plan the next on-site - maybe about 2+ weeks after the planned static site launch date (9/26) but before the end of the PoP, so we can get together and also have something to celebrate, but with enough time so that the celebrations aren't interfering with our delivery lol?","title":"[Task] Plan next on-site (mid-late Oct)","number":477,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/477"},"id":"PVTI_lADOABZxns4ASDf3zgI8A6o","repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 5","startDate":"2023-08-23","duration":14},"status":"Backlog","title":"[Task] Plan next on-site (mid-late Oct)"},{"content":{"type":"PullRequest","body":"## Summary\r\nFixes #419\r\n\r\n### Time to review: __15 mins__\r\n\r\n## Changes proposed\r\nAdd CODE_OF_CONDUCT.md and initial COMMUNITY_GUIDELINES.md\r\n\r\n## Context for reviewers\r\nThe community guidelines will evolve as we ramp up.\r\n","title":"[Issue 419] Add Code of Conduct and Community Guidelines","number":432,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/pull/432"},"id":"PVTI_lADOABZxns4ASDf3zgI8EB0","labels":["documentation"],"repository":"https://github.com/HHS/grants-equity","reviewers":["andycochran","daphnegold","SammySteiner","decause-gov"],"status":"Done","title":"[Issue 419] Add Code of Conduct and Community Guidelines"},{"content":{"type":"PullRequest","body":"## Summary\r\nFixes #185 \r\n\r\n### Time to review: 20 mins\r\n\r\n## Changes proposed\r\nAdds ADR described in #185 \r\n\r\n## Context for reviewers\r\nThis merges #185 and #112 .\r\n\r\n\r\n","title":"[Issue 185] Branch Convention and Release Workflow ADR","number":425,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/pull/425"},"id":"PVTI_lADOABZxns4ASDf3zgI8EZQ","labels":["documentation","docs: adr"],"repository":"https://github.com/HHS/grants-equity","reviewers":["andycochran","daphnegold","widal001","SammySteiner"],"status":"Done","title":"[Issue 185] Branch Convention and Release Workflow ADR"},{"content":{"type":"Issue","body":"### Description \r\nThis ADR is to assess the necessity and feasibility of implementing a Content Management System (CMS) for our project. It aims to evaluate the pros and cons, and to help answer whether implementing a CMS is critical at this stage or if it can be deferred, identify the content that requires updates, quantify the volume of content, and establish use cases and user stories to guide our decision.\r\n\r\n### Approvers\r\n- 1 engineer not on the ticket\r\n- @widal001 and/or @lucasmbrown-usds \r\n\r\n\r\n### Decision Criteria\r\nDecision criteria that could potentially impact the decision:\r\n\r\n- **Content volume and complexity**: volume of content that needs to be managed and its complexity. **Rationale**: A headless CMS might be more valuable when dealing with large volumes of content, etc. \r\n- **Content update frequency**: assess how frequently the content needs to be updated or revised. Determine whether multiple teams members or content creators will be involved in content updates. **Rationale**: If the project requires frequent content updates, collab amongst team members (NOFO transformation team, etc.), a content approval workflow then a headless CMS could streamline these processes. \r\n- **Scalability and growth**: Consider the scalability of your project and potential future growth. Evaluate whether your project's content and features will expand over time. **Rationale**: A headless CMS could offer flexibility and scalability, making it suitable for projects with evolving content and functionality.\r\n- **Implementation and level of effort**: evaluate if there is an urgency with implementing a CMS now versus later in the project and whether there is an option for a phased implementation. **Rationale**: setting up a CMS may introduce a high initial set up phase and this could impact other priorities on the project. \r\n\r\nOpen question: \r\n- Integration and extensibility: assess the need to integrate the project with external systems, third-party tools, or custom apps. **Rationale**: CMS might be helpful when integrating with other systems. \r\n\r\n### Definition of Done\r\n\r\n- [ ] If the outcome of this ADR is that we are moving forward with a CMS system in the near-term, add an ADR ticket to evaluate CMS options. \r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)","title":"[ADR]: CMS requirement","number":462,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/462"},"id":"PVTI_lADOABZxns4ASDf3zgI8GeM","labels":["documentation","docs: adr","project: grants.gov"],"milestone":{"title":"[Epic] CMS Planning ","description":"We will do an exploration around whether we should use a CMS tool, and which CMS tool to use on the beta.grants.gov site. This work should help outline the next steps for implementing the CMS tool. ","dueOn":""},"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"Refinement","title":"[ADR]: CMS requirement"},{"assignees":["daphnegold"],"content":{"type":"Issue","body":"### Summary\r\n\r\nRelated to #285\r\n\r\nCurrently CI passing is not a gate to deploys, and they are entirely separate workflows. Likely great to keep them separate workflows, but let's investigate a way to gate deploys based on CI (testing, etc). \r\n\r\nThings to investigate: `run_workflow` or `check_suite` or something else?\r\n\r\nKeep in touch with platform on changes, maybe we can integrate back into their repos.\r\n\r\n### Acceptance criteria\r\n\r\n- Implement gates to deployment\r\n- Test","title":"[Task]: Github Actions CI/CD flow","number":463,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/463"},"id":"PVTI_lADOABZxns4ASDf3zgI8I7A","labels":["project: grants.gov"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"In Progress","story Points":5,"title":"[Task]: Github Actions CI/CD flow"},{"assignees":["SammySteiner"],"content":{"type":"Issue","body":"### Summary\n\nComplex environments causes Google Tag Manager to stop sending all enhanced metrics. We want to simplify and not use environments and instead set up filters in the analytics console.\n\n### Acceptance criteria\n\nUse the simple tag manager implementation. ","title":"[Task]: Simplify GA environments","number":482,"repository":"HHS/grants-equity","url":"https://github.com/HHS/grants-equity/issues/482"},"id":"PVTI_lADOABZxns4ASDf3zgJBws0","labels":["project: grants.gov"],"linked pull requests":["https://github.com/HHS/grants-equity/pull/483"],"repository":"https://github.com/HHS/grants-equity","sprint":{"title":"Sprint 6","startDate":"2023-09-06","duration":14},"status":"In Progress","story Points":1,"title":"[Task]: Simplify GA environments"}],"totalCount":142} \ No newline at end of file +{ + "items": [ + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup]\r\n\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the indentifier of the content. \r\n![image](https://github.com/HHS/simpler-grants-gov/assets/111455374/d2f78039-ca4d-4f6e-8e59-ee72e3f85efa)\r\n\r\n\r\n- Add the approved identifier content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n* About HHS: https://www.hhs.gov/about/index.html\r\n* Accessibility support: https://www.grants.gov/web/grants/accessibility-compliance.html\r\n* FOIA requests: https://www.hhs.gov/foia/index.html\r\n* No FEAR Act data: https://www.eeoc.gov/\r\n* Officer of the Inspector General: https://oig.hhs.gov/\r\n* Performance reports: https://www.hhs.gov/about/budget/index.html\r\n* Privacy Policy: https://www.grants.gov/web/grants/privacy.html\r\n* Visit USA.gov: https://www.usa.gov/ \r\n\r\n\r\n### Dependencies\r\n#283 \r\n\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Identifier is working and match the Figma design\r\n- [ ] Appears as a story in Storybook\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)", + "title": "[Task]: Implement identifier section to static site", + "number": 357, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/357" + }, + "id": "PVTI_lADOABZxns4ASDf3zgILZOU", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/398" + ], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Implement identifier section to static site" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\n\nWe will use Terraform and Github Actions to spin up infrastructure for the front-end on AWS.\n\nSet up dev + prod environments on same account. Either front-end or back-end, whichever comes first, will also be responsible for setting up higher level infra.\n\nRelated to #189 \nBlocked by #188 \nUnblocks to #285 \n\n### Acceptance criteria\n\n- [ ] Follow `template-infra` conventions to build and deploy architecture to AWS\n- [ ] Redeploys on changes to `/frontend` via Github Actions\n- [ ] Test/verify via AWS console", + "title": "[Task]: Set up front-end infrastructure in AWS", + "number": 299, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/299" + }, + "id": "PVTI_lADOABZxns4ASDf3zgICZR0", + "labels": ["topic: frontend", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/381" + ], + "milestone": { + "title": "[Epic] Infrastructure-as-Code", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Set up front-end infrastructure in AWS" + }, + { + "content": { + "type": "Issue", + "body": "- [ ] Provision and maintain AWS resources via Terraform IaC\n- [ ] Configure AWS services (VPC, IAM, load balancers, security groups, Aurora RDS, Fargate, etc)\n- [ ] Provision and manage external resources that interact with AWS (Github Actions CI/CD pipeline)\n- [ ] Obtain domain name\n- [ ] Configure, update, verify DNS settings\n- [ ] Test and verify access\n\nUsers that will need access: @acouch, @daphnegold, @gcarson-bit, @SammySteiner (anyone I missed working on infra?)", + "title": "AWS Access", + "number": 139, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/139" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHyYHw", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "FY23 Q4: Open source group kickoff", + "description": "", + "dueOn": "2023-09-27T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "AWS Access" + }, + { + "assignees": ["andycochran"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nUpdate the content with the [following changes](https://docs.google.com/document/d/1BhU1L3hpkm7svX5p2mGir-TwUkm6o4o6/edit?usp=sharing\u0026ouid=104152432676616108761\u0026rtpof=true\u0026sd=true): \r\n\r\n![image](https://github.com/HHS/simpler-grants-gov/assets/409279/6cba3019-b88c-40ea-a61a-dff0e4ca1609)\r\n\r\n![image](https://github.com/HHS/simpler-grants-gov/assets/409279/9bbcf764-42fe-44b4-abef-8f7b59589e4b)\r\n\r\n![image](https://github.com/HHS/simpler-grants-gov/assets/409279/38644c51-b5b7-48bf-9207-10282e30a905)\r\n\r\n![image](https://github.com/HHS/simpler-grants-gov/assets/409279/f913ed06-c293-4555-a036-5d8d2b664da6)\r\n\r\n\r\n### Acceptance criteria\r\n\r\nAll text matches the approve content. ", + "title": "[Task]: update content strings per approved copy", + "number": 396, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/396" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIt2P4", + "labels": ["enhancement", "topic: frontend"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/405" + ], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: update content strings per approved copy" + }, + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\n\nBlocked by #472 \n- Set up DNS hosting service to manage DNS settings or identify who manages DNS for grants.gov\n- Update DNS to point to domain \n- Configure any necessary subdomains \n\n### Acceptance criteria\n\n- [ ] DNS settings are updated and the domain successfully resolves to correct address\n- [ ] Website is accessible at beta.grants.gov\n- [ ] Relevant documentation is provided for DNS configuration\n\n### Notes\n", + "title": "[Task]: Network DNS entry", + "number": 295, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/295" + }, + "id": "PVTI_lADOABZxns4ASDf3zgICHzE", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "[Epic]: beta.grants.gov domain", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Blocked", + "title": "[Task]: Network DNS entry" + }, + { + "assignees": ["andycochran"], + "content": { + "type": "Issue", + "body": "### Summary\n\n- Make the footer layout look nicer on mobile\r\n- Size the tiny logo more appropriately\r\n- Consider removing the repetitive text next to the logo \r\n - rely on logo's alt text instead\r\n - confirm USWDS guidance \r\n- Improve the layout of Social links to not awkwardly wrap on small screen\r\n - reconsider their order (perhaps GitHub is more appropriate last?) \n\n### Acceptance criteria\n\n- Footer looks nicer on small screen\r\n- Footer logo is legible\r\n- Social links don't wrap to multiple lines ", + "title": "[Task]: Improve Footer's responsive layout ", + "number": 448, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/448" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6T2A", + "labels": ["enhancement"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/451" + ], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "story Points": 2, + "title": "[Task]: Improve Footer's responsive layout " + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nCI vulnerability checks are extremely slow because each scan is building a new docker image, leading to 6+ minutes to run scans. Sharing a docker image between jobs would alleviate this and only need one build.\r\n\r\nOptions to investigate:\r\n- actions/cache (very fast)\r\n- artifact upload and download (slow)\r\n- ECR push and pull (slow)\r\n\r\nConsider migrating back to Platform\r\n\r\n### Acceptance criteria\r\n\r\n- Update vulnerability checks to share docker image, hopefully quickly", + "title": "[Task]: Fix vulnerability checks", + "number": 435, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/435" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI3D58", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/452" + ], + "milestone": { + "title": "[Epic] Infrastructure-as-Code", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "story Points": 5, + "title": "[Task]: Fix vulnerability checks" + }, + { + "assignees": ["EOKENAVA"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nThe project will use a systems for tracking tickets and organizing work into sprints. The goal of this ADR is to evaluate a series of ticket tracking systems and select the one we will be using for this project:\r\n\r\n### Options\r\n\r\n- Platform chosen for wiki\r\n- Google Docs\r\n- Microsoft Sharepoint\r\n- Box\r\n- Others as recommended by dev team\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **Onboarding:** New users can be onboarded to the tool at no cost to the user in a process that takes less than 2 days\r\n- **HHS Network Access:** Users can access the documents when they are on the HHS network\r\n- **Authority to Operate (ATO):** This platform is covered under the Grants.gov Authority to Operate\r\n- **Private Docs:** Users can restrict document access to certain users or groups\r\n- **Public Docs:** Users can make certain documents public so that members of the public can view the document\r\n- **Doc Formats:** The platform supports key document formats, including:\r\n - Text documents\r\n - Spreadsheets\r\n - Slide decks\r\n - PDFs\r\n- **Comments:** Users can comment on individual lines or sections within the document\r\n- **Collaborative Editing:** Multiple users can contribute to the document at the same time\r\n\r\n#### Nice to Have\r\n\r\n- **Open Source:** The code used to host and run the platform is open source\r\n- **Track Changes:** Users can make suggested edits to the document that the editor of the doc can accept or reject\r\n- **Templates:** Users can save certain documents as templates that other users can copy\r\n- **Plugins:** The platform supports additional features like codeblocks, calendar integrations, etc. through plugins or add-ons\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)\r\n- [ ] The resulting choice satisfies the must-have conditions listed above (or has a plan for addressing any gaps):\r\n - [ ] Onboarding\r\n - [ ] HHS Network Access\r\n - [ ] ATO\r\n - [ ] Private Docs\r\n - [ ] Public Docs\r\n - [ ] Formats\r\n - [ ] Comments\r\n - [ ] Collaborative editing\r\n", + "title": "[ADR]: Document Sharing", + "number": 118, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/118" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHteGM", + "labels": ["docs: adr", "topic: comms", "project: grants.gov"], + "milestone": { + "title": "Communication Platforms", + "description": "Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.", + "dueOn": "2023-08-23T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Sprint Backlog", + "story Points": 3, + "title": "[ADR]: Document Sharing" + }, + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nWhen running Google's lighthouse tool, it flags two items for SEO improvement.\r\n\u003cimg width=\"321\" alt=\"Screenshot 2023-08-22 at 1 31 01 PM\" src=\"https://github.com/HHS/simpler-grants-gov/assets/25465464/d4cbcc4a-8740-490b-a87b-230df5f2c835\"\u003e\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Page has a title element that can be found by google\r\n- [ ] Page has a meta description that can be found by google\r\n", + "title": "[Task]: Improve front-end SEO to comply with google best practices", + "number": 397, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/397" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIt43g", + "labels": ["topic: frontend", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/418" + ], + "milestone": { + "title": "Static site launch with NOFO content", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "story Points": 2, + "title": "[Task]: Improve front-end SEO to comply with google best practices" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup]\r\n\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the footer of the content. \r\n![image](https://github.com/HHS/simpler-grants-gov/assets/111455374/e0cd15c3-6808-4057-b9a2-c929c4781840)\r\n\r\n- Add the approved footer content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n* HHS Logo https://www.hhs.gov/web/policies-and-standards/web-policies/logo-seal-and-symbol-policies/index.html\r\n![HHS logo](https://github.com/HHS/simpler-grants-gov/assets/111455374/5ffc0675-3188-45b3-a869-38f0896581ab)\r\n* Twitter Link: https://twitter.com/grantsdotgov\r\n* Youtube link: https://www.youtube.com/user/GrantsGovUS\r\n* RSS link: https://www.grants.gov/web/grants/rss.html\r\n* Facebook link: there is no facebook link, this icon can be removed\r\n* Instagram link: There is no instagram link, this icon can be removed. \r\n* Newsletter link: https://www.grants.gov/web/grants/connect/newsletter-archive.html \r\n* Blog link: https://grantsgovprod.wordpress.com/\r\n* Phone number: 1-877-696-6775\r\n* Email: [support@grants.gov](mailto:support@grants.gov)\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Footer is working and match the Figma design\r\n- [ ] Appears as a story in Storybook\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)\r\n- [ ] Approvers: at least one design or product person\r\n\r\n### Dependencies\r\n#283 \r\n\r\n\r\n", + "title": "[Task]: Implement footer for static site", + "number": 336, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/336" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIJ_E4", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/438" + ], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Implement footer for static site" + }, + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\n\nAdd a grants specific favicon to the site\n\n### Acceptance criteria\n\nFavicon is displayed in the browser tab", + "title": "[Task]: Add Favicon", + "number": 454, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/454" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI7sc0", + "labels": ["topic: frontend", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/458" + ], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Add Favicon" + }, + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\n\nImplement analytics.usa.gov on the beta.grants.gov site. \r\n\r\n### Dependencies\r\n- Register for an account, will need @lucasmbrown-usds with a HHS email to request it. \r\n\r\n### Implementation details\r\n\r\n1.[ Github repo with implementation instructions \u0026 code](https://github.com/digital-analytics-program/gov-wide-code)\r\n2. [DigitalGov implementation page](https://digital.gov/guides/dap/add-your-site-dap/)\r\n3. [DAP FAQs](https://digital.gov/guides/dap/common-questions-about-dap/)\r\n\r\n### Notes\r\n- The DAP script should only be applied to public-facing pages. Public-facing web pages are defined as those that can be accessed without any authentication or login, and are not part of an otherwise “privileged session.”\r\n- The DAP script tag should not be placed on pages visited during logged-in sessions. Notably, other seemingly “public” pages that can be accessed without authentication may also be part of privileged sessions; for example, a password reset page that is accessed by clicking a link in an email is not appropriate for DAP code because it assumes the visitor has the privilege of control over the email account used to provide the link. \r\n- How to add the analytics tag: https://digital.gov/guides/dap/add-your-site-dap/\n\n### Acceptance criteria\n\n - [ ] DAP is set up on the beta.grants.gov site ", + "title": "[Task]: set up analytics for beta.grants.gov", + "number": 389, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/389" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIvnYk", + "labels": ["project: grants.gov", "level: epic"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/453" + ], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: set up analytics for beta.grants.gov" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nConfigure the [Safety](https://pypi.org/project/safety/) tool (or optionally just Renovate for consistency with front-end). Requires getting a Safety-specific API key and configuring in Github Actions. \n\n### Acceptance criteria\n\n- [ ] Get Safety API key \u0026 add to Github Secrets (need admin permissions)\r\n- [ ] Install and configure Safety\r\n- [ ] Add to Github Actions config", + "title": "[Task]: Back-end dependency vulnerability checks", + "number": 239, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/239" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH7VJY", + "labels": ["topic: backend", "project: grants.gov"], + "milestone": { + "title": "[Epic]: Developer Tools", + "description": "Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.", + "dueOn": "2023-07-19T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Ready", + "title": "[Task]: Back-end dependency vulnerability checks" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nThis needs to be created as a first step to update the System Security Plan.\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Review and complete SIA \r\n- [ ] SIA shared with internal team for review @EOKENAVA \r\n- [ ] SIA Review with @lucasmbrown-usds \r\n- [ ] SIA review with Jacob and Ricky with Security", + "title": "[Task]: Create Security Impact Assessment", + "number": 459, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/459" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI76Es", + "labels": ["documentation", "project: grants.gov", "level: task"], + "milestone": { + "title": "[Epic] Security Approval for static site", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "story Points": 8, + "title": "[Task]: Create Security Impact Assessment" + }, + { + "content": { + "type": "Issue", + "body": "To get an SSL certificate, we need to complete the [DNS_Change_Request.pdf](https://github.com/HHS/simpler-grants-gov/files/12529419/DNS_Change_Request.pdf)\n\n\n\n**Acceptance Criteria**\n- [ ] Complete the DNS request and submits to Terrence(?)", + "title": "[Task] Complete and submit SSL form", + "number": 472, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/472" + }, + "id": "PVTI_lADOABZxns4ASDf3zgJAeOg", + "labels": ["project: grants.gov"], + "milestone": { + "title": "[Epic] Security Approval for static site", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "title": "[Task] Complete and submit SSL form" + }, + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "## Description\r\n\r\nOnce we have identified the initial API needs, see #70, we will need to get data from the production database in order to provide opportunity information.\r\n\r\nFor testing purposes, we can use fixture data created in the API. There is another ticket for this.\r\n\r\nThere are several components.\r\n\r\n### Replication\r\n\r\nWe will need to get updated data from the existing grants.gov database. We will likely use the AWS DMS tool for this.\r\n\r\nQuestions include whether we would pull in all of the data updates or only specific tables.\r\n\r\nReplication would require that journaling is turned on on the existing Oracle database, and would affect that resource utilization of that database.\r\n\r\n### Transformation\r\n\r\nWe will undoubtedly need to do some kind of transformation once we have features that use the database. This may involve changing the data types of existing columns, creating new views to better support the API or aother analysis, or data cleaning.\r\n\r\nThe DMS tool supports this, however we may want to build our own transformation pipeline. A tool like dbt might be a good fit. In that case we would likely use an ELT strategy, first getting replicated data, then transforming it. The ADR could leave this decision for future work.\r\n\r\n### New Data Model\r\n\r\nOnce we start working on #70, we may want to store the data differently than in the current system. If this is the case we can describe that as changing or creating a new data model. If we change the data model then we will need to incorporate this in the transformation step.\r\n\r\n### Connecting to Test and Prod database\r\n\r\nThe spike should consider exactly what access point needs to be setup to peer between the VPCs in AWS, or if there is another connection strategy. This discovery should also note what other steps like turning on journaling will be necessary.\r\n\r\n### Questions to answer\r\n\r\n1. Do we want to replicate the database at all right now? \r\n2. Do we want to replicate the entire database or just specific tables for get_opportunities endpoint? (what is easiest is okay for us)\r\n3. What will we do for test data in our dev environment/local development?\r\n\r\n### Open Questions / Notes\r\n - Separate this into it's own task - Local dev data strategy (use of fixture data vs connecting to dev or prod AWS envs)\r\n\r\n### Definition of Done\r\n\r\n- [ ] A comment in this ticket or a page in the internal wiki documenting \r\n - [ ] Replication strategy (ie DMS, certain tables)\r\n - [ ] Initial transformation strategy \r\n - [ ] Description of different environments (dev / prod)\r\n- [ ] AWS budget has been updated if necessary\r\n- [ ] Steps that MH will need to take to support the decision will be recorded, such as turning on journaling or network setup\r\n- [ ] List of high level tasks that can be turned into tickets in order to start development\r\n\r\n### \r\n\r\nAfter this spike, we should be able to:\r\n\r\n* Write the #322 \r\n* Create an initial epic, ie \"Setup DMS Tool and Dev Database Replication\" with a backlog of tasks\r\n* Define following epics to define replication work\r\n\r\n\r\n", + "title": "[Spike]: Document replication and transformation strategies for production database", + "number": 388, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/388" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIvf-Y", + "labels": ["docs: adr", "project: grants.gov"], + "milestone": { + "title": "Database (DB) replica", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "title": "[Spike]: Document replication and transformation strategies for production database" + }, + { + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nWe aim to decide on the most suitable replication tool for the transformation process. We could use AWS Data Migration but this ADR should evaluate if it is appropriate or if we should use an alternative tool. \r\n\r\nWe need to determine whether an ETL pipeline is required for data transformation if the selected replication tool does not handle it inherently. \r\n\r\n### Approvers\r\n\r\n- [ ] 1 engineer not on the ticket\r\n- [ ] Billy Daly or Lucas Brown\r\n\r\n### Options\r\n\r\n_No response_\r\n\r\n### Decision Criteria\r\n\r\nDecision criteria that could potentially impact the tool used: \r\n\r\n- **Data source and destination compatibility**: rep tool should support the data sources used in the project (db, file systems) and is compatible with the target destination (db, warehouses, cloud storage).\r\n- **Data volume and throughput**: tool can handle the volume and throughput requirements of the data replication process efficiently.\r\n- **Data transformation capabilities:** replication tool can handle data transformation during the replication process, including data format conversions and schema changes.\r\n- **Real-time vs. batch replication**: determine whether real-time data replication or if batch replication at scheduled intervals is sufficient.\r\n- **Latency and performance**: consider the latency and performance to ensure timely data updates and minimal impact on system performance.\r\n- **Security and encryption**: replication tool provides adequate security features, including data encryption and secure data transmission.\r\n- **Monitoring and alerting**: to promptly identify and address replication issues.\r\n- **Ease of use and configuration**: Evaluate the tool's user-friendliness and ease of configuration, as complex setup processes can lead to inefficiencies.\r\n- **Scalability**: Determine if the replication tool can scale to accommodate future growth and increased data demands.\r\n- **Cost**: Consider the licensing and operational costs\r\n- **Support and community**: Assess availability of support options and the size and activity of the tool's user community.\r\n\r\n\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: Replication tool", + "number": 322, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/322" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIGeyo", + "labels": ["docs: adr", "topic: data", "project: grants.gov"], + "milestone": { + "title": "Database (DB) replica", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Backlog", + "title": "[ADR]: Replication tool" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\n\n### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the hero content. \r\n![image](https://github.com/HHS/simpler-grants-gov/assets/25465464/95ffea5e-743d-403c-bd77-67e40c5118b3)\r\n\r\n- Add the approved hero content changes to the page\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n\r\n\r\n\n\n### Acceptance criteria\n\n### Acceptance criteria\r\n\r\n- [ ] Hero is working and match the Figma design\r\n- [ ] Appears as a story in Storybook\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)\r\n\r\n### Dependencies\r\n#283 ", + "title": "[Task]: Implement Hero for static site", + "number": 359, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/359" + }, + "id": "PVTI_lADOABZxns4ASDf3zgILYVE", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/376" + ], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Implement Hero for static site" + }, + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the funding opportunity section the content. \r\n![image](https://github.com/HHS/simpler-grants-gov/assets/111455374/04a696a6-0f1c-41ac-a56d-ee3f0c42faca)\r\n\r\n\r\n- Add the approved funding opportunity content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n* The the 4 nofo prototypes available here: https://github.com/HHS/simpler-grants-gov/tree/main/documentation/notice_of_funding_opportunity_prototypes (ACF, ACL, CDC, SAMHSA)\r\n* The method for the feedback form is still TBD, if we have not decided on a method for collecting feedback at the time this ticket is picked up, we will not add the following section: \r\n![image](https://github.com/HHS/simpler-grants-gov/assets/111455374/c65a2731-ea79-42f9-9e62-672fbd8e6b29)\r\n\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Funding opportunity section is working and match the Figma design (Feedback form section is optional, depending on status)\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)", + "title": "[Task]: Implement the funding opportunity section for the static site", + "number": 361, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/361" + }, + "id": "PVTI_lADOABZxns4ASDf3zgILY8w", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/377" + ], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Implement the funding opportunity section for the static site" + }, + { + "assignees": ["lucasmbrown-usds"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nGet a list of the all the tools, products, and services (AWS) that are on the approved ATO list for HHS.\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] List of ATO approved tools for HHS\r\n", + "title": "[TASK]: HHS AWS ATO List", + "number": 222, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/222" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH5f2c", + "labels": ["project: grants.gov"], + "milestone": { + "title": "[Epic] Security Approval for static site", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[TASK]: HHS AWS ATO List" + }, + { + "assignees": ["andycochran"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nIn the first iteration of the static site, one goal is to collect general feedback from applicants — especially first-time applicants or users who've created a workspace but haven't applied yet, but anyone should be able to respond regardless of their experience with federal grants. We also want to collect general responses to the new NOFO prototypes. \r\n\r\nWe're basically asking 2 questions: \r\n- What do you think of the new prototype funding announcements? \r\n- What do you think of the current funding announcements and/or grants.gov? \r\n\r\nOpen feedback should be collected through an open-ended text box (or two) that allows the user to write whatever they want. Either question can be address or ignored. \r\n\r\nWe need to decide by which method and technology we will collect this feedback. \r\n\r\n### Approvers\r\n\r\n- @lucasmbrown-usds \r\n- @itsemilyianacone\r\n- @andycochran\r\n- @sumiat \r\n- @acouch, @daphnegold, or @SammySteiner (1+ Engineer)\r\n\r\n\r\n### Options\r\n\r\n- Microsoft Form (created by HHS's 365) \r\n- HTML form that posts to HHS's Sharepoint\r\n- HTML form that creates a GitHub issue, letting users know their response will create a public issue w/o needing to create a GitHub account\r\n- Create and embed an open text form with a user research tool like [Dovetail](https://dovetail.com/), so that feedback is captured, centralized, and analyzed in the same place as future research studies\r\n- Link to (or embed) a Google form \r\n- Start a Google Group for the community, ask users to share there\r\n- ???\r\n\r\n### Decision Criteria\r\n\r\n- Should not feel like a black box for the user\r\n- Has a better UX than sending an email \r\n- The prompt is open-ended, yet guides the user to contribute meaningful and helpful feedback\r\n- Submissions are easy to sort through, analyze, and synthesize\r\n- User understands how their submission will be used\r\n- Does not require PRA clearance \r\n- Primary audience\r\n\r\nThis work should also include the use case for a Contact Us on beta.grants.gov: \r\n\r\nExplore options for solutions that allow members of of the public to submit questions or comments about the project as an alternative to a public forum like a listserv:\r\n\r\n[Front](https://front.com/)\r\n[Loop Email](https://www.intheloop.io/pricing-us/)\r\n[Google collaborative inbox](https://support.google.com/a/users/answer/167430?hl=en)\r\nContact us form on the website\r\nHHS internal options for shared inbox, such as [grants.simplification@hhs.gov](mailto:grants.simplification@hhs.gov)\r\nOthers as suggested by dev team\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)\r\n\r\n### Open questions / Notes\r\n- What are the use cases? How will we be using the data? \r\n- Design choices: Will we collect PII? Will we respond to the respondents? ", + "title": "[ADR]: Method \u0026 technology for collecting general feedback", + "number": 306, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/306" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIEG4s", + "labels": ["docs: adr", "project: grants.gov"], + "milestone": { + "title": "Communication Platforms", + "description": "Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.", + "dueOn": "2023-08-23T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "story Points": 8, + "title": "[ADR]: Method \u0026 technology for collecting general feedback" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nWe have prepared for 508 compliance for the beta site. We have: \r\n- Code linters tell us when we're missing a11y stuff\r\n- We've run Google Lighthouse — 100% score\r\n- USWDS is a 508-compliant design system ([accessibility docs](https://designsystem.digital.gov/documentation/accessibility/)) which we used\r\n\r\nThere is a formal approval process for 508 compliance that includes the following: \r\n* You submit to the compliance team via web form: \r\nhttps://www.hhs.gov/web/section-508/index.html \r\n* @itsemilyianacone may need to submit on Nava's behalf (not sure if we can do it ourselves)\r\n* Emily has a checklist for PDFs (used for NOFOs); she will try to get us the checklist for websites \r\n* 2 weeks submit to respond (more lead time better) \r\n\r\nThis ticket is track that work and ensure we go through the review process before launch. \r\n\r\n### Acceptance Criteria\r\n- [ ] Complete any checklist items provided by HHS\r\n- [ ] Submit the compliance web form \r\n- [ ] Create any tickets, only if remediations are needed\r\n- [ ] Completed or next steps for 508 compliance approval process defined", + "title": "[Task] 508 Compliance Review", + "number": 473, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/473" + }, + "id": "PVTI_lADOABZxns4ASDf3zgJAgE0", + "labels": ["project: grants.gov", "level: task"], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "title": "[Task] 508 Compliance Review" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nWhile we wait for PRA approval for a feedback form, we want someway for an individual to contact us in the \"Ways to Get Involved\" section. An interim solution while we wait is to use [equityingrants@hhs.gov](mailto:equityingrants@hhs.gov) email address. \r\n\r\n### Acceptance Criteria\r\n- [ ] Incorporate the email address [equityingrants@hhs.gov](mailto:equityingrants@hhs.gov) in the \"Ways to Get Involved\" section on the beta site so that users have a method of reaching out (aside from Support). ", + "title": "[Task] Interim feedback email", + "number": 474, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/474" + }, + "id": "PVTI_lADOABZxns4ASDf3zgJAgSk", + "labels": ["project: grants.gov", "level: task"], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "title": "[Task] Interim feedback email" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\n\nSummary\nWe will use Terraform and Github Actions to spin up infrastructure for the back-end on AWS.\n\nSet up dev + prod environments on same account. We can add dev later. Either front-end or back-end, whichever comes first, will also be responsible for setting up higher level infra.\n\n\n\nRelated to #187 \nBlocked by #188\nUnblocks to #285\n\n### Acceptance criteria\n\n- [ ] Follow template-infra conventions to build and deploy architecture to AWS\n- [ ] Redeploys on changes to /api via Github Actions\n- [ ] Test/verify via AWS console", + "title": "[Task]: Set up back-end infrastructure in AWS", + "number": 300, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/300" + }, + "id": "PVTI_lADOABZxns4ASDf3zgICZ6s", + "labels": ["topic: backend", "project: grants.gov"], + "milestone": { + "title": "[Epic] Infrastructure-as-Code", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "title": "[Task]: Set up back-end infrastructure in AWS" + }, + { + "content": { + "type": "Issue", + "body": "Suggested team design review/pass with @andycochran to make sure that all styling changes are captured.\r\n\r\n### Acceptance Criteria\r\n\r\n- Consistent font-typing", + "title": "Clean up styles", + "number": 404, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/404" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIvlvw", + "labels": ["project: grants.gov", "level: epic"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/428" + ], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "Clean up styles" + }, + { + "assignees": ["andycochran"], + "content": { + "type": "Issue", + "body": "Per [Design Tooling](https://github.com/HHS/grants-api/blob/main/documentation/milestones/milestone_short_descriptions.md#design-tooling) milestone, explore options for design research tools that block the [Static site launch with NOFO content](https://github.com/HHS/grants-api/blob/main/documentation/milestones/milestone_short_descriptions.md#static-site-launch-with-nofo-content) milestone.", + "title": "[ADR]: design research tools", + "number": 117, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/117" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHtVe0", + "labels": ["docs: adr", "project: grants.gov"], + "milestone": { + "title": "Design tooling", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Backlog", + "title": "[ADR]: design research tools" + }, + { + "assignees": ["gcarson-bit"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nGet access to the Grants.gov database and get a high level view for the table layout and composition.\r\n\r\n### User story\r\n\r\nAs a Data Engineer, I want to start to draft the data model so that I can understand the relationships between key tables in the existing database and understand if there is a need to modify any schemas.\r\n\r\n### Acceptance criteria\r\n\r\n- [x] Devs get access to lower environment database\r\n", + "title": "[Story]: Explore Data Model", + "number": 173, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/173" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHzsXA", + "labels": ["topic: data", "project: grants.gov"], + "milestone": { + "title": "Database (DB) replica", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 2", + "startDate": "2023-07-12", + "duration": 14 + }, + "status": "Done", + "title": "[Story]: Explore Data Model" + }, + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup]\r\n\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the goals section of the content in the Figma.\r\n![image](https://github.com/HHS/simpler-grants-gov/assets/111455374/108a9edb-7d15-4efd-ba31-5cd244e8adc9)\r\n \r\n\r\n- Add the approved goals section content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n\r\n\r\n### Dependencies\r\n#283 \r\n\r\n\r\n\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Goals section is working and match the Figma design\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)", + "title": "[Task]: Implement the goals section for the static site", + "number": 358, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/358" + }, + "id": "PVTI_lADOABZxns4ASDf3zgILY9M", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/371" + ], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Implement the goals section for the static site" + }, + { + "assignees": ["acouch", "SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nCreate an initial architecture diagram for the backend and frontend that will serve as a living document in the main repository. \r\n\r\nThis architecture diagram will allow: \r\n- stakeholders to understand the overall system design at a glance\r\n- the team to make complex concepts and relationships easier to understand\r\n- the team to show the system dependencies, interfaces, and interactions which will allow stakeholders to evaluate impact of design choices, identify risks, make informed decisions regarding system modifications, scalability, and future enhancements. \r\n- Use a tool that is version controlled, like mermaid.js\r\n- We would need host diagram or application diagram\r\n\r\nExamples of a good place to start for level of depth: \r\n- https://github.com/usds/justice40-tool/blob/main/docs/architecture/architecture.mmd\r\n- https://github.com/usds/justice40-tool/tree/main/docs/architecture\r\n\r\n### User story\r\n\r\nAs a software architect, I want to create an initial architecture diagram for the backend so that I can have a visual representation of the system's structure, components, and their relationships. \r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Create a living document to visually represent the architecture\r\n- [ ] Following individuals have approved: \r\n - @acouch\r\n - engineer not working the ticket @daphnegold @SammySteiner\r\n - @lucasmbrown-usds \r\n - @widal001 \r\n- [ ] Following individuals have been notified for option review and feedback\r\n - @gcarson-bit\r\n - @sumiat\r\n- [ ] Diagram is created and stored in //TBD//\r\n- [ ] Secrets manager is defined in the architecture diagram\r\n\r\n### Describe the proposed testing strategy\r\n\r\n_No response_\r\n\r\n### Screenshots and additional context\r\n\r\n_No response_\r\n\r\nBlocked by #222 ", + "title": "[Story]: Architecture Diagram", + "number": 188, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/188" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH33f4", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/365" + ], + "milestone": { + "title": "API Planning", + "description": "Formalize a series of architectural decisions about the API, including the technology stack we will use, the type of API we will build, and the services we'll leverage to deploy and host it.", + "dueOn": "2023-07-12T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[Story]: Architecture Diagram" + }, + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nNow that the Front-end repo has been set up, we can use the template to start adding content for the future beta.grants.gov site. \r\nWe ultimately want the design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n\r\nWe are breaking up the work into components. This ticket focuses only on the Ways to Get Involved section content. \r\n![image](https://github.com/HHS/simpler-grants-gov/assets/25465464/c2cae0ca-0c92-4256-b3a7-68346f92c04e)\r\n\r\n- Add the approved Ways to Get Involved section content changes to the page\r\n- Ensure all the links and form on the page works as expected\r\n - Read our Project Goals and Milestones: https://github.com/HHS/simpler-grants-gov/blob/main/documentation/milestones/milestone_short_descriptions.md\r\n - Github: https://github.com/HHS/simpler-grants-gov \r\n- Following the USWDS style guide\r\n\r\n### Links\r\n* [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0)\r\n* [Static site content](https://docs.google.com/document/d/16l2Gy-AstT9cgJK3jy_qe0I53nHhgri1O3F9UVc1TTU/edit#heading=h.syecbpqvccr6)\r\n\r\n### TBD\r\n\r\nNeed content for some TBD items mentioned in Figma:\r\n- Link for survey\r\n- Mailing list signup link\r\n- email address\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Ways to Get Involved section is working and match the Figma design\r\n- [ ] Test coverage\r\n- [ ] Static site content served from root of the application\r\n- [ ] Updated content and design to match the [Figma mockup](https://www.figma.com/file/lpKPdyTyLJB5JArxhGjJnE/beta.grants.gov?type=design\u0026node-id=0-1\u0026mode=design\u0026t=781AdnK0dT5hXDxT-0) \r\n- [ ] mobile formatting as expected\r\n- [ ] desktop formatting as expected\r\n- [ ] Accessibility testing (should be inherited when using USWDS)\r\n\r\n### Dependencies\r\n#283 ", + "title": "[Task]: Implement Ways to Get Involved Section for static site", + "number": 362, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/362" + }, + "id": "PVTI_lADOABZxns4ASDf3zgILY5c", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/385" + ], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Implement Ways to Get Involved Section for static site" + }, + { + "assignees": ["sumiat"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nThis ADR aims to evaluate different analytics tools to select one that supports the project in tracking key metrics during the launch of the first version of beta.grants.gov. We will evaluate top 3-5 analytics tools, including analytics.gov and Google Analytics, to identify the best fit for our specific needs and objectives. The selected tool should provide valuable insights and data to help us measure and optimize the platform's performance.\r\n\r\n### Approvers\r\n\r\n- [ ] @lucasmbrown-usds \r\n- [ ] @widal001 \r\n- [ ] 1 product or designer\r\n- [ ] 1 engineer\r\n\r\n\r\n### Options\r\n\r\n_No response_\r\n\r\n### Decision Criteria\r\n\r\n- **Data tracking capabilities**: solution should be able to track the essential metrics and events relevant to the project's goals, such as page views, user interactions, and other custom events.\r\n- **Data visualization and reporting**: The tool should offer clear and comprehensive data visualization and reporting features to present data in a way that is easy to understand and interpret for multiple audiences (public, internal HHS, etc.)\r\n- **Integration with existing systems**: consider whether the analytics tool can seamlessly integrate with the project's existing infrastructure, and other tools used in the development process. We will have a content management system in the future and we should have forward thinking to ensure it could be compatible with various CMS options. \r\n- **Real-time data processing**: Assess whether the analytics tool can provide real-time data processing capabilities, enabling timely responses to critical events.\r\n- **Data privacy and security**: Ensure that the selected tool complies with data privacy regulations and provides robust security measures to protect sensitive information.\r\n- **Scalability**: Consider whether the analytics tool can handle the expected growth in data volume and user traffic as the project expands.\r\n- **Cost**: Evaluate the pricing structure of the analytics tool.\r\n- **Customization and flexibility**: Determine the level of customization and flexibility offered by the tool to tailor it to the specific needs and requirements of the project.\r\n- **Support and documentation**: Check the availability of technical support, documentation, and community forums to aid in implementation and troubleshooting.\r\n- **User-friendly interface**: Consider the ease of use and intuitiveness of the tool's interface, enabling team members to efficiently navigate and extract insights.\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: Analytics platform", + "number": 323, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/323" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIGfGA", + "labels": ["docs: adr", "topic: data", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/372" + ], + "milestone": { + "title": "[Epic]: Web analytics", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[ADR]: Analytics platform" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Problem Statement\r\n\r\nThe [communications platform milestone](milestone) identifies a series of platforms through which the Grants API project needs to engage both internal and external stakeholders. One of these platforms is a wiki for storing notes, documents, and other content about the project. Ideally we would select a platform that balances ease of use and flexibility with the cost of implementing and maintaining the wiki.\r\n\r\nThe goal of this ADR is to evaluate a series of potential wiki platforms and determine which one best fits the needs and objectives of this project based on the decision criteria outlined below. \r\n\r\nRelated to #22 \r\n\r\n### Approvers\r\n\r\n- @lucasmbrown-usds \r\n- @sarahknoppA6 \r\n- @acouch \r\n- @sumiat \r\n- @andycochran \r\n\r\n### Options\r\n\r\n- [Confluence](confluence)\r\n- [Notion](notion)\r\n- [GitHub Wiki](gh-wiki)\r\n- [GitBook](gitbook)\r\n- [WikiJS](wiki-js)\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **Usability:** Non-technical users should be able to access and create content with minimal training or guidance.\r\n- **Content Review:** Collaborators should be able to review and edit draft content before those changes are published.\r\n- **Version History:** Editors should be able to see and restore previous versions of a given page.\r\n- **Multi-Media:** The platform should support multiple types of media (e.g. videos, images, file uploads, tables, diagrams) with minimal configuration.\r\n- **Internationalization (i18n):** The platform should provide support for displaying content in multiple languages.\r\n- **Web Analytics:** The platform should provide support for tracking site usage and other web analytics.\r\n- **Onboarding Costs:** Onboarding new members to the platform should be relatively inexpensive, both in terms of staff time/resources and direct costs (e.g. licensing fees).\r\n- **Maintenance Costs:** It should not be prohibitively expensive to maintain the wiki, both in terms of staff time/resources and direct costs (e.g. hosting fees).\r\n\r\n#### Nice to Have\r\n\r\n- **External Contributions:** Members of the public should be able to suggest changes to wiki content and internal stakeholders should be able to review those contributions before they are published.\r\n- **Data Access:** Content generated and stored in the wiki should be accessible outside of the wiki platform, either through syncing content to an HHS owned repository or through an official API.\r\n- **Open Source:** The tool used to manage and host the wiki content should be open source, if possible.\r\n\r\n### Definition of Done\r\n\r\n- [ ] The ADR is drafted and stored in documentation/[ADR folders TBD]/\r\n- [ ] The ADR is included in the necessary table of contents in the ADR/decision folder\r\n- [ ] The ADR describes the drivers and pros and cons of the decision\r\n- [ ] The ADR has been reviewed and approved by the internal team\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template", + "title": "[ADR]: Wiki Platform", + "number": 30, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/30" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHk7G8", + "labels": ["docs: adr", "topic: comms", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/36" + ], + "milestone": { + "title": "Communication Platforms", + "description": "Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.", + "dueOn": "2023-08-23T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "story Points": 3, + "title": "[ADR]: Wiki Platform" + }, + { + "assignees": ["sumiat"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nThe project will need a video conference platform for both internal (HHS + contractors) and external (w/ members of the public) meetings. The goal of this ADR is to review and select a video conference platform for the project.\r\n\r\n### Options\r\n\r\n- [Zoom](https://zoom.us/)\r\n- [Microsoft Teams](https://www.microsoft.com/en-us/microsoft-teams/group-chat-software)\r\n- [Google Meet](https://meet.google.com/)\r\n- [Jitsi](https://jitsi.org/)\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **Public Access:** If they have the right link, members of the public can join a video call without creating an account\r\n- **Waiting Room:** Meeting organizers can configure their meetings to require that attendees must be admitted before they can join the call\r\n- **Video Recording:** Meeting organizers can record a video call from within the platform\r\n- **Screen Sharing:** Attendees can share their screen (if given the appropriate permissions by meeting organizer)\r\n- **Chat:** Users can post comments and questions in a chat that are visible to other attendees\r\n- **Phone Support:** Users can join by phone if they don't have access to a computer for video\r\n- **Live Transcription:** The platform supports live transcription for attendees that may need closed captioning\r\n- **Authority to Operate:** The platform should be covered under the existing ATO for Grants.gov\r\n\r\n#### Nice to Have\r\n\r\n- **Webinar:** The platform supports a webinar format, i.e. attendees who can join and post questions but not see one another or unmute without permission\r\n- **Breakout Rooms:** A meeting organizer can split users out into virtual \"breakout rooms\" for small-group discussions\r\n- **Open Source:** The code to run this platform is open source and offers a self-hosting option\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)\r\n- [ ] The selection made by the ADR should satisfy the must-have criteria (or have a plan to address the gaps):\r\n - [ ] Public access\r\n - [ ] Waiting room\r\n - [ ] Video recording\r\n - [ ] Screen sharing\r\n - [ ] Chat\r\n - [ ] Phone support\r\n - [ ] Live transcription\r\n - [ ] ATO", + "title": "[ADR]: Video Conference", + "number": 99, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/99" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHqwmU", + "labels": ["docs: adr", "topic: comms", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/330", + "https://github.com/HHS/simpler-grants-gov/pull/337" + ], + "milestone": { + "title": "Communication Platforms", + "description": "Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.", + "dueOn": "2023-08-23T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[ADR]: Video Conference" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Train HHS staff on GitHub", + "number": 449, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/449" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6Z5c", + "labels": ["project: nofo", "level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Backlog", + "story Points": 2, + "title": "[Task]: Train HHS staff on GitHub" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nBlocked by #139 \r\n#299 #300 should be completed prior to this ticket (see below)\r\n\r\nNote: Infrastructure + Github Actions should exist before this ticket can be worked on. This can be done in multiple ways, at the discretion of whoever picks up this issue:\r\n1. Incrementally, in coordination and piecemeal as front-end or back-end infrastructure are set up\r\n1. First either front-end or back-end is set up, then this is done in tandem with the remaining\r\n1. As a fast follow up task after back-end and front-end infra, where CI/CD will not function as intended until this is completed\r\n\r\n____\r\n\r\nTemplate applications are meant to be in separate repositories. Some work needs to be done for the Github Actions to run appropriately in a mono-repo after template infra is implemented for both frontend and API. See links for more context.\r\n\r\nhttps://github.com/navapbc/template-infra/issues/238\r\nhttps://nava.slack.com/archives/C03G1SWD9H7/p1689363837120939\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Modify Github Actions workflows\r\n- [ ] Test (I haven't tried this, but there are ways to run GA locally now, please report back how it goes!)", + "title": "[Task]: Reconfigure Github Actions CI/CD for mono-repo structure", + "number": 285, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/285" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIAvLE", + "labels": ["project: grants.gov"], + "milestone": { + "title": "[Epic] Front-end CI/CD", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "title": "[Task]: Reconfigure Github Actions CI/CD for mono-repo structure" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nCurrently, Github Actions has administrator access. We will want to pare that down to only necessary permissions. There's a template ticket for this as well. Can pull in the change from there if they beat us to implementing.\r\n\r\nhttps://github.com/navapbc/template-infra/issues/194\n\n### Acceptance criteria\n\n- Check if template has completed new role assignment permissions for Github Actions and pull in if they have\r\n- Reduce role permissions for GA if not", + "title": "[Task]: Github actions permissions", + "number": 332, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/332" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIJz5s", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "[Epic] Infrastructure-as-Code", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "title": "[Task]: Github actions permissions" + }, + { + "assignees": ["widal001", "sumiat"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nCreate the individual milestone document for the Open Source Group Kickoff milestone #72 \r\n\r\n### Definition of Done\r\n\r\n- [ ] Milestone document is updated and stored in `documents/milestones/individual_milestones/`\r\n- [ ] The milestone document has been linked under the appropriate section in the short description doc\r\n- [ ] The milestone has node has been updated to \"planning\" in the dependency diagram\r\n- [ ] Milestone has been reviewed and approved by the internal team\r\n- [ ] A corresponding epic has been created for the milestone", + "title": "[Milestone Doc]: Open Source Group Kickoff", + "number": 221, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/221" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH5bhc", + "labels": ["docs: milestone", "project: grants.gov"], + "milestone": { + "title": "FY23 Q4: Open source group kickoff", + "description": "", + "dueOn": "2023-09-27T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "story Points": 3, + "title": "[Milestone Doc]: Open Source Group Kickoff" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Description\n\nDraft the milestone document for #56 \n\n### Definition of Done\n\n- [ ] Milestone document is updated and stored in `documents/milestones/individual_milestones/`\n- [ ] The milestone document has been linked under the appropriate section in the short description doc\n- [ ] The milestone has node has been updated to \"planning\" in the dependency diagram\n- [ ] Milestone has been reviewed and approved by the internal team\n- [ ] A corresponding epic has been created for the milestone", + "title": "[Milestone Doc]: Public Measurement Dashboard", + "number": 180, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/180" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH2Ueg", + "labels": ["docs: milestone", "topic: data", "project: grants.gov"], + "milestone": { + "title": "FY24 Q1: Public measurement dashboard", + "description": "", + "dueOn": "2023-12-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "story Points": 3, + "title": "[Milestone Doc]: Public Measurement Dashboard" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "So far, I've written our mermaid diagram of milestones defining the links within the subgraphs. Unfortunately, the order of the subgraphs is important because the first time a node appears in the Markdown determines the subgraph that the Node will be a part of. Given that the subgraphs are extremely complex, this makes it hard to edit the diagram and NOT have a node switch subgraphs.\r\n\r\nFor example, it might look like: \r\n\r\n``` \r\nflowchart LR\r\n\r\n subgraph Subgraph 1 \r\n A\r\n end\r\n\r\n subgraph Subgraph 2 \r\n A --\u003e B\r\n end\r\n``` \r\n\r\nWhereas the same code with the subgraphs reordered:\r\n\r\n```\r\nflowchart LR\r\n\r\n subgraph Subgraph 2 \r\n A --\u003e B\r\n end\r\n\r\n subgraph Subgraph 1 \r\n A\r\n end\r\n``` \r\n\r\nWill render differently. \r\n\r\nTo solve this, I'm going to remove all links from all subgraphs, and only define the nodes in each subgraph. Then I'll define the links outside of the subgraphs. Like this: \r\n\r\n```\r\nflowchart LR\r\n\r\n subgraph Subgraph 2 \r\n B\r\n end\r\n\r\n subgraph Subgraph 1 \r\n A\r\n end\r\n\r\n A--\u003eB\r\n```", + "title": "[Task]: Rewrite mermaid diagram to improve stability", + "number": 7, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/7" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHk7Gg", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/11" + ], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Backlog", + "story Points": 1, + "title": "[Task]: Rewrite mermaid diagram to improve stability" + }, + { + "assignees": ["andycochran"], + "content": { + "type": "Issue", + "body": "### Summary\n\nPer info brainstormed in #106, draft a content strategy for a v0.0 of the static beta site that includes: \r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- ~Information about upcoming events~ (do not yet exist) \r\n\r\nInformation to be confirmed: \r\n- URI for survey (and whether the call-to-action should only be for applicants, not grantors)\r\n- What's the preferred contact method for grantors at HHS or other grantmaking agencies to reach out — email, phone, specific point of contact?\r\n- Can/should quotes from user research be included? \n\n### Acceptance criteria\n\n- [x] Reviewed with @itsemilyianacone \n- [x] Reviewed with @lucasmbrown-usds \n- [x] Reviewed with and approved by Elizabeth \n- [x] Andy has synced with engineering team regarding implementation ", + "title": "[Task]: Content design draft for static beta site", + "number": 219, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/219" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH5MMs", + "labels": ["enhancement", "project: grants.gov"], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Content design draft for static beta site" + }, + { + "assignees": ["widal001", "EOKENAVA"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nThe project will use a systems for tracking tickets and organizing work into sprints. The goal of this ADR is to evaluate a series of ticket tracking systems and select the one we will be using for this project:\r\n\r\n### Approvers\r\n\r\n- @lucasmbrown-usds \r\n- @EOKENAVA \r\n- @sumiat \r\n- @sarahknoppA6 \r\n- @acouch \r\n\r\n### Options\r\n\r\n- GitHub Issues for tickets + Zenhub for sprint planning\r\n- GitHub Issues for tickets + GitHub Projects for sprint planning\r\n- Jira for tickets and sprint planning\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **Onboarding:** New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days\r\n- **Ticket Tracking:** Tickets can be organized into sprints and tracked as part of larger milestones or epics\r\n- **Public Access:** Without logging in, members of the public can see tickets that are being worked on\r\n- **Public Requests:** Members of the public can submit bug reports and feature requests and track how that work is being prioritized\r\n- **Templates:** The system supports default templates for different types of tickets which prompts the person creating the ticket for a specific set of information\r\n\r\n#### Nice to Have\r\n\r\n- **Level of Effort Estimates:** Tickets can be assigned an estimated level of effort (e.g. story points, t-shirt size, etc.)\r\n- **Reporting:** Users can report on key metrics like burndown, point allocation, etc. from directly within the tool\r\n- **Roadmap:** The system provides views that lets users understand how individual tickets rollup into a broader project roadmap as well as the status of milestones within that roadmap\r\n\r\n### Definition of Done\r\n\r\n- [x] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [x] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [x] The ADR has been reviewed and approved by the approvers listed above\r\n- [x] The ADR satisfies requirements that are outlined in the ADR template\r\n- [x] Any follow-up tickets have been created (if necessary)\r\n- [x] The resulting choice satisfies the must-have conditions listed above (or has a plan for addressing any gaps):\r\n - [x] Onboarding\r\n - [x] Ticket tracking\r\n - [x] Public access\r\n - [x] Public requests\r\n - [x] Templates", + "title": "[ADR]: Ticketing System", + "number": 98, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/98" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHqwmQ", + "labels": ["docs: adr", "topic: comms", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/182" + ], + "milestone": { + "title": "Communication Platforms", + "description": "Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.", + "dueOn": "2023-08-23T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 2", + "startDate": "2023-07-12", + "duration": 14 + }, + "status": "Done", + "story Points": 2, + "title": "[ADR]: Ticketing System" + }, + { + "assignees": ["acouch", "EOKENAVA"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nThe existing System Security Plan needs to be reviewed to include the beta.grants.gov infrastructure, tools, team, and operating procedures.\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- Review the existing SSP and collaborate with MH and ISSO on next steps", + "title": "[Task]: Review Existing SSP to Include beta.grants.gov infra, tools, and team", + "number": 391, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/391" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIsDE0", + "labels": ["documentation", "project: grants.gov"], + "milestone": { + "title": "[Epic]: beta.grants.gov domain", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Review Existing SSP to Include beta.grants.gov infra, tools, and team" + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "## Description\r\n\r\nThe project will be hosted on a cloud provider and provisioned by an infrastructure as code tool. Security, utility, and interoperability are primary concerns.\r\n\r\n## Definition of Done\r\n\r\n- [x] ADR explains pros and cons of decision\r\n- [x] Security, utility, and interoperability are addressed", + "title": "[ADR]: Cloud Platform and IAC Tool", + "number": 93, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/93" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHqwl0", + "labels": ["docs: adr", "topic: infra", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/119" + ], + "milestone": { + "title": "[Epic] Infrastructure-as-Code", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[ADR]: Cloud Platform and IAC Tool" + }, + { + "assignees": ["daphnegold", "gcarson-bit"], + "content": { + "type": "Issue", + "body": "**Definition of Done**\n- [x] Use AWS estimation tool to generate the probable cost of infrastructure over the first month\n- [x] Submit 💰", + "title": "Initial AWS Budget", + "number": 107, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/107" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHqwnI", + "labels": ["topic: infra", "project: grants.gov"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 2", + "startDate": "2023-07-12", + "duration": 14 + }, + "status": "Done", + "title": "Initial AWS Budget" + }, + { + "assignees": ["sumiat"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nDetermine the platform that we want to use for the chat-based communication (e.g. Slack, Discord, Microsoft Teams, etc.)\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: Chat", + "number": 105, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/105" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHqwm4", + "labels": ["docs: adr", "topic: comms", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/309", + "https://github.com/HHS/simpler-grants-gov/pull/310" + ], + "milestone": { + "title": "Communication Platforms", + "description": "Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.", + "dueOn": "2023-08-23T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 2", + "startDate": "2023-07-12", + "duration": 14 + }, + "status": "Done", + "title": "[ADR]: Chat" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Description\n\nCreate the individual milestone document for the [GET Opportunities milestone](https://github.com/orgs/HHS/projects/12/views/2?pane=issue\u0026itemId=31951053) milestone.\n\n### Definition of Done\n\n- [ ] Milestone document is updated and stored in `documents/milestones/individual_milestones/`\n- [ ] The milestone document has been linked under the appropriate section in the short description doc\n- [ ] The milestone has node has been updated to \"planning\" in the dependency diagram\n- [ ] Milestone has been reviewed and approved by the internal team\n- [ ] A corresponding epic has been created for the milestone", + "title": "[Milestone doc]: GET Opportunities", + "number": 220, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/220" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH5aPc", + "labels": ["docs: milestone", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/249" + ], + "milestone": { + "title": "FY24 Q1: GET Opportunities", + "description": "Deploy a public endpoint to PROD that allows users to see at least one (but not necessarily more than one!) field of data per listed opportunity in grants.gov", + "dueOn": "2023-10-11T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "story Points": 3, + "title": "[Milestone doc]: GET Opportunities" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nCreate the individual milestone document for the [Static Site](https://github.com/HHS/grants-api/blob/main/documentation/milestones/milestone_short_descriptions.md#static-site-launch-with-nofo-content) milestone.\r\n\r\n### Definition of Done\r\n\r\n- [ ] Milestone document is drafted and stored in documents/milestones/individual_milestones/\r\n- [ ] The milestone document has been linked under the appropriate section in the short description doc\r\n- [ ] The milestone has node has been updated to \"planning\" in the dependency diagram\r\n- [ ] Milestone has been reviewed and approved by the internal team\r\n- [ ] A corresponding epic has been created for the milestone", + "title": "Milestone Doc: Static Site with NOFO Content", + "number": 33, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/33" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHk7HM", + "labels": ["docs: milestone", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/243" + ], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "story Points": 3, + "title": "Milestone Doc: Static Site with NOFO Content" + }, + { + "assignees": ["gcarson-bit"], + "content": { + "type": "Issue", + "body": "### Summary\n\nEvaluate the AWS Database Migration Service (DMS) feasibility as a potential solution for the Grants.gov DB replication.\r\nCheck that it meets the replication requirements:\r\n\r\n- Can handle the size of the existing DB\r\n- Can support data transformations\r\n- Logging\r\n- Cost\r\n- FEDRAMP approved\n\n### Acceptance criteria\n\nDMS is evaluated and determined to be either feasible or not feasible as a potential solution for the Grants.gov DB replication.", + "title": "[Task]: Research DMS as DB Replication Tool", + "number": 369, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/369" + }, + "id": "PVTI_lADOABZxns4ASDf3zgISfF4", + "labels": ["topic: data"], + "planned Start": "2023-08-01", + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 3", + "startDate": "2023-07-26", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Research DMS as DB Replication Tool" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\n\nBlocked by #245 \n\nIntegrate Gunicorn production server into Flask API for deployment to prod.\n\n### Acceptance criteria\n\n- [ ] Install server\n- [ ] Test and verify", + "title": "[Task]: Integrate back-end production server", + "number": 246, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/246" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH-x8I", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/374" + ], + "milestone": { + "title": "Milestone: API Implementation", + "description": "### Summary \r\n\r\nDuring the [API Planning ](url) work we were able to formalize a series of architectural decisions about the API, including the technology stack and the type of API we will build, and the services we'll leverage to deploy and host it. This work focuses on implementing and building the API. ", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Integrate back-end production server" + }, + { + "content": { + "type": "Issue", + "body": "This font has a number of accessbility features: https://brailleinstitute.org/freefont ", + "title": "Investigate using hyperlegible for font for website and materials", + "number": 5, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/5" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHk7Gc", + "labels": ["project: grants.gov"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "Investigate using hyperlegible for font for website and materials" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nBlocked by #110 \n\nConfigure a pre-commit hook separately for Python and JavaScript that can run desired code quality tools in the respective directories\n\n### Acceptance criteria\n\n- [ ] Configure to run desired code quality tools\n- [ ] Update README.md", + "title": "[Task]: Configure pre-commit hooks", + "number": 223, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/223" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH5sqI", + "labels": ["project: grants.gov"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Configure pre-commit hooks" + }, + { + "assignees": ["itsemilyianacone"], + "content": { + "type": "Issue", + "body": "- Make sure the PDFs in the [notice_of_funding_opportunity_prototypes ](https://github.com/HHS/simpler-grants-gov/tree/main/documentation/notice_of_funding_opportunity_prototypes) directory are the most recent version\n- Add the 4th prototype ", + "title": "[Task]:Update the NOFO prototype PDFs", + "number": 235, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/235" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH65gQ", + "labels": ["enhancement", "project: grants.gov"], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "title": "[Task]:Update the NOFO prototype PDFs" + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "### Description\n\nThis ADR will record the decision for Python database tools to be used.\n\n### Approvers\n\n@acouch \r\n@lucasmbrown-usds \r\n@Samm\n\n### Options\n\nSQLAlchemy\r\nAlembic\n\n### Decision Criteria\n\n_No response_\n\n### Definition of Done\n\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\n- [ ] The ADR has been reviewed and approved by the approvers listed above\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: Python Database Tools", + "number": 237, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/237" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH7Rm4", + "labels": ["docs: adr", "topic: data", "project: grants.gov"], + "milestone": { + "title": "Test data and schema", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Backlog", + "title": "[ADR]: Python Database Tools" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\n\nBlocked by #110, #109 \n\nGithub Actions checks (tests passing, etc) should stop PRs from merging until they pass. A repo admin will need to pick up this task.\n\n### Acceptance criteria\n\n- [x] Configure Github Actions to block PR merge until they pass", + "title": "[Task]: Github Actions checks should block merging PRs", + "number": 286, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/286" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIAwuk", + "labels": ["project: grants.gov"], + "milestone": { + "title": "[Epic]: Developer Tools", + "description": "Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.", + "dueOn": "2023-07-19T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 2", + "startDate": "2023-07-12", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Github Actions checks should block merging PRs" + }, + { + "assignees": ["gcarson-bit"], + "content": { + "type": "Issue", + "body": "### Context\r\n\r\nWe've started the work on the #48. In this issue, we want to perform a technical spike to identify shortcomings and must-haver requirements that will support the design of the new data model. The goal is to gather information on the problem landscape with the current DB, requirements, and use cases. The previous team has implemented several DB performance improvements which should also be considered. \r\n\r\nThere are a few open questions that are also needed to be answered. You can find them in the [the milestone doc](https://github.com/HHS/simpler-grants-gov/blob/main/documentation/milestones/individual_milestones/db_planning.md#open-questions) introduced by #104 \r\n\r\n### Outcomes\r\n\r\nThe spike will provide a comprehensive understanding of the challenges and requirements related to the current database. It will help in scoping the DB work effectively and guide the design of a new data model that addresses identified shortcomings and aligns with stakeholder and user needs. \r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Spike document created that provides information to support the design of the new data model\r\nQuestions have been reviewed and answered with support of HHS staff\r\n- [ ] The answers to all of the questions have been documented in the milestone document\r\n - [ ] Will this database serve as an OLTP system, OLAP system, or both? Will this database be used for analytics, and is there a need for a second database to be created with data pipelines?\r\n - [ ] What are the current datastores that support the legacy Grants.gov system?\r\n - [ ] Is the existing Grants.gov database heavy on read or write transactions?\r\n - [ ] How many external sources does the existing database have?\r\n\r\n\r\n### Notes\r\n- Decreased application process time by over 90%(from 2+ minutes to under 12 seconds)\r\n- Reduced query run times by an average of 90% by tuning top 25 database queries\r\n- Reduced login time by 66% (from 3 seconds to under 1 second)\r\n- Reduced time to extract information from the SAM directory by 96.5%(from over 22 hours each month to under 45 minutes)\r\n- Moved 60% of database cron jobs to scheduler jobs, improving monitoring and success rates\r\n\r\n", + "title": "[Task]: Spike for DB Planning", + "number": 247, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/247" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH-9hU", + "labels": ["docs: milestone", "topic: data", "project: grants.gov"], + "milestone": { + "title": "DB Planning", + "description": "Formalize a series of architectural decisions about how data is stored, including the type of database we will use and the platform we'll use host it.", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Backlog", + "title": "[Task]: Spike for DB Planning" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nDetermine the appropriate information hierarchy for the docs within the repository.\n\n### User story\n\n- As an open source contributor I want:\r\n - the root level README to explain the setup of the repository, so that I don't have to click into a bunch of different sub-directories to find out what they are used for.\r\n - the steps to get started with each part of the repo to be clear from the root of that repo, so that I don't have to explore a read through multiple pages of documentation just to get started.\n\n### Acceptance criteria\n\n- [ ] The approach to structuring the information hierarchy of the repository has been documented so that other maintainers/contributors know how to organize docs in a consistent way\r\n- [ ] At least 2 users who have no prior experience with the repository can follow the guidelines in the root-level README and correctly set up the codebase in each of the sub-directories with minimal guidance\n\n### Describe the proposed testing strategy\n\n- Ask two users with no prior exposure to the repository to follow the instructions from the root-level README and set up the codebase in each of the sub-directories\r\n- Ask a member of the project how they would organize the docs for a new hypothetical sub-directory to ensure that the guidelines provided with this ticket are clear and consistent with how the doc is organized.\n\n### Screenshots and additional context\n\n_No response_", + "title": "[Story]: Information hierarchy for docs", + "number": 248, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/248" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH--oc", + "labels": ["project: grants.gov"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Story]: Information hierarchy for docs" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nThe proposed front-end license checking tool, [license-check](https://www.npmjs.com/package/license-checker), needs to be configured. It's unclear if the license verification is robust enough to meet our needs regarding automation.\n\n### Acceptance criteria\n\n- [ ] Check that license-checker is robust enough to automatically verify licensing checks\r\n- [ ] If a different tool is chosen, update ADR https://github.com/HHS/simpler-grants-gov/issues/102\r\n- [ ] Configure Github Actions to run automatically", + "title": "[Task]: Front-end license checking", + "number": 292, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/292" + }, + "id": "PVTI_lADOABZxns4ASDf3zgICB80", + "labels": ["project: grants.gov"], + "milestone": { + "title": "[Epic]: Developer Tools", + "description": "Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.", + "dueOn": "2023-07-19T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Backlog", + "title": "[Task]: Front-end license checking" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nSet up hosting for the static beta.grants.gov site\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] The static site is running on AWS (or github pages if necessary)\r\n- [x] Whatever front-end infrastructure identified in #189 and #188 is deployed\n- [ ] Requests are successfully routed through the application infrastructure\r\n\r\n### Notes\r\n- Blocked by #139\r\n- Use Github actions but need to confirm. Need to know more about the HHS tenant, we might need special permissions. Until we get access to AWS tenant, we don't know for sure. Checking with @marwanabufadel ", + "title": "[Task]: Setup hosting for beta.grants.gov", + "number": 293, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/293" + }, + "id": "PVTI_lADOABZxns4ASDf3zgICGM0", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "[Epic]: beta.grants.gov domain", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Backlog", + "title": "[Task]: Setup hosting for beta.grants.gov" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\n- Configure routing rules to map correctly\r\n\r\n### Acceptance criteria\r\n- Routing rules are correctly configured\r\n\r\n_No response_", + "title": "[Task]: Routing for static site", + "number": 294, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/294" + }, + "id": "PVTI_lADOABZxns4ASDf3zgICHLA", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "[Epic]: beta.grants.gov domain", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Routing for static site" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nSet up SSL certificate for static site to enable secure and encrypted communication between the web server and clients. \n\n- Identify who manages SSL Certificates for grants.gov\n- certificate procurement\n- certificate installation\n- SSL configuration\n- verification and testing\n- set up automatic certificate renewal \n- documentation of the SSL cert details, including expiration and renewal procedure \n\n### Acceptance criteria\n\n- [ ] SSL cert is successfully installed and validated\n- [ ] Update load balancer to accept connections from port 443\n- [ ] Website is accessible via HTTPS\n- [ ] HTTPS redirection is functional\n- [ ] Documentation is provided for future reference\n\n\n### Notes / Open Questions\n- Who on HHS is responsible for managing/procuring SSL certificates? @EOKENAVA to find the correct contact\n- Does the SSP need to be done before this? \n- This could be done as a follow up. Beta.grants.gov could be released HTTP", + "title": "[Task]: SSL certificate setup", + "number": 296, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/296" + }, + "id": "PVTI_lADOABZxns4ASDf3zgICIZ4", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "[Epic]: beta.grants.gov domain", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[Task]: SSL certificate setup" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Troubleshoot error with historic charts in GitHub insights", + "number": 311, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/311" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIFZSI", + "labels": ["topic: data", "project: grants.gov", "level: task"], + "milestone": { + "title": "Sprint Reporting", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Troubleshoot error with historic charts in GitHub insights" + }, + { + "assignees": ["widal001", "sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Requirements gathering for sprint reporting", + "number": 312, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/312" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIFZSU", + "labels": ["topic: data", "project: grants.gov", "level: task"], + "milestone": { + "title": "Sprint Reporting", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Requirements gathering for sprint reporting" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nCreate a chart that shows the sprint burndown: % of tickets and/or points remaining over the course of the sprint\r\n\r\n### Acceptance Criteria\r\n\r\n- [ ] A chart exists which displays this metric for each sprint\r\n- [ ] There is a mechanism for updating that chart programmatically that multiple people can run\r\n", + "title": "[Task]: Sprint burndown v0 chart", + "number": 313, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/313" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIFZSg", + "labels": ["topic: data", "project: grants.gov", "level: task"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/436" + ], + "milestone": { + "title": "Sprint Reporting", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Review", + "story Points": 2, + "title": "[Task]: Sprint burndown v0 chart" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Summary\n\nMigrate the approved draft of the NOFO Project Plan from Excel to the [NOFO Project Tracker in GitHub](https://github.com/orgs/HHS/projects/14/views/3)\n\n### Acceptance criteria\n\n- [ ] All of the tasks in the Excel file have been transferred to GitHub with the corresponding fields updated\n- [ ] Previous versions of NOFO milestones or tasks have been archived\n- [ ] The tasks and milestones have been converted into issues with the appropriate labels applied\n- [ ] An initial set of views and charts have been created to assist with creating the status report\n- [ ] GitHub project are reviewed and approved by Elizabeth and Camille, with supporting reviews from Emily and Lucas", + "title": "[Task]: Migrate NOFO project plan to GitHub", + "number": 443, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/443" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5BK0", + "labels": ["topic: product", "project: grants.gov", "level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "In Progress", + "story Points": 2, + "title": "[Task]: Migrate NOFO project plan to GitHub" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Summary\n\nPrepare a demo for the HHS team of options for the internal comms site and collaboration site for NOFO100. This demo should include a slide deck that outlines the requirements and options we're considering and (ideally) a mockup of what these various options could look like.\n\n### Acceptance criteria\n\n- [ ] A slide deck which outlines the requirements and recommendations has been created and shared with HHS stakeholders\r\n- [ ] Mockups of the comms site have been created in the following tools:\r\n - [x] GitBook\r\n - [ ] SharePoint (if we can get a sandbox account)\r\n- [ ] The slide deck and mockups have been presented to HHS leadership and we've reached a decision\r\n- [ ] An ADR ticket has been created to record this decision once it's been finalized", + "title": "[Task]: Demo of options for HHS internal comms site", + "number": 446, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/446" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6Bs8", + "labels": ["topic: comms", "project: nofo", "level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "In Progress", + "story Points": 3, + "title": "[Task]: Demo of options for HHS internal comms site" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nCreate a chart that shows the milestone burndown: % of tickets and/or points remaining within a given milestone over time\r\n\r\n### Acceptance Criteria\r\n\r\n- [ ] A chart exists which displays this metric for each sprint\r\n- [ ] There is a mechanism for updating that chart programmatically that multiple people can run\r\n", + "title": "[Task]: Milestone burndown v0 chart", + "number": 314, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/314" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIFZSo", + "labels": ["topic: data", "project: grants.gov", "level: task"], + "milestone": { + "title": "Sprint Reporting", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Milestone burndown v0 chart" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Sprint allocation v0 chart", + "number": 315, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/315" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIFZS0", + "labels": ["topic: data", "project: grants.gov", "level: task"], + "milestone": { + "title": "Sprint Reporting", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Sprint allocation v0 chart" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Sprint completion v0 chart", + "number": 316, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/316" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIFZTM", + "labels": ["topic: data", "project: grants.gov", "level: task"], + "milestone": { + "title": "Sprint Reporting", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Sprint completion v0 chart" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Sprint velocity v0 chart", + "number": 317, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/317" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIFZTc", + "labels": ["topic: data", "project: grants.gov", "level: task"], + "milestone": { + "title": "Sprint Reporting", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Sprint velocity v0 chart" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Lead/cycle time v0 chart", + "number": 318, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/318" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIFZTo", + "labels": ["topic: data", "project: grants.gov", "level: task"], + "milestone": { + "title": "Sprint Reporting", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Lead/cycle time v0 chart" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nNow that the group has settled on the following issue hierarchy: `milestone \u003e epic \u003e issue` we need to update our existing issue templates to reflect this new hierarchy and update the default labels.\r\n\r\n### Specification\r\n\r\nUpdate the list of issue templates to reflect this list\r\n\r\n1. Bug Report\r\n - Sections: No change\r\n - Labels: `bug`\r\n2. Feature Request\r\n - Sections: No change\r\n - Labels: `enhancement`\r\n3. Internal - Milestone\r\n - Sections\r\n - Description\r\n - Dependencies\r\n - Metrics\r\n - Definition of Done\r\n - Labels\r\n - `project: grants.gov`\r\n - `level: milestone`\r\n4. Internal - Epic\r\n - Sections\r\n - Description\r\n - Dependencies\r\n - Sub-Tasks\r\n - Definition of Done\r\n - Labels\r\n - `project: grants.gov`\r\n - `level: epic`\r\n5. Internal - Task\r\n - Sections: No Change\r\n - Labels: \r\n - `project: grants.gov`\r\n - `level: task`\r\n6. Internal - ADR\r\n - Sections: No Change\r\n - Labels\r\n - `project: grants.gov`\r\n - `docs: adr`\r\n - `level: task`\r\n7. Internal - Milestone Doc\r\n - Sections: No Change\r\n - Labels: \r\n - `docs: milestone`\r\n - `level: task`\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] The issue templates have been updated to reflect the requirements listed above\r\n- [ ] The GitHub conventions wiki page has been updated to reflect the requirements listed above\r\n- [ ] The project automations use the new labels to automatically add tickets to a project", + "title": "[Task]: Update issue templates with new hierarchy and labels", + "number": 426, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/426" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI3KT4", + "labels": ["project: grants.gov", "level: task"], + "milestone": { + "title": "[Epic] Communications Implementation", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "In Progress", + "story Points": 2, + "title": "[Task]: Update issue templates with new hierarchy and labels" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nCreate an ADR that documents answers the following questions about how we use GitHub Issues and GitHub Projects to manage and organize work within the project:\r\n\r\n- GitHub Issue Questions\r\n - What types of issues should we create templates for?\r\n - What are the primary labels we want to use to organize tickets?\r\n - How do we plan to use milestones and task lists to organize tickets hierarchically?\r\n - When should PRs be attached to issues? To milestones?\r\n- GitHub Project Questions\r\n - Do we want to use story points?\r\n - If so, what scale/intervals should we use for pointing tickets?\r\n - What are the primary views we want to support within GitHub projects?\r\n - What are the primary metrics we want to calculate with project data?\r\n\r\n### Approvers\r\n\r\n- @EOKENAVA \r\n- @sumiat \r\n- @widal001 \r\n- @lucasmbrown-usds \r\n- @sarahknoppA6 \r\n\r\n### Options\r\n\r\n_No response_\r\n\r\n### Decision Criteria\r\n\r\n_No response_\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: GitHub issues \u0026 project conventions", + "number": 320, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/320" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIFcy0", + "labels": ["docs: adr", "project: grants.gov", "level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Progress", + "story Points": 3, + "title": "[ADR]: GitHub issues \u0026 project conventions" + }, + { + "assignees": ["widal001", "sarahknoppA6"], + "content": { + "type": "Issue", + "body": "### Summary\n\nWork with the MH team to upgrade our GitBook trial instance to a Pro Plan before our free trial expires on 9/11/23.\n\n### Acceptance criteria\n\n- [ ] Our GitBook instance has been upgraded to the pro plan\r\n- [ ] We can add new members to our GitBook instance without re-negotiating a contract\r\n- [ ] The content we drafted during the trial period is still available in the upgraded plan", + "title": "[Task]: Upgrade to GitBook Pro Plan \u0026 confirm Slack plan", + "number": 442, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/442" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5AgM", + "labels": ["topic: comms", "project: grants.gov", "level: task"], + "milestone": { + "title": "[Epic] Communications Implementation", + "description": "", + "dueOn": "" + }, + "planned Finish": "2023-09-08", + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Progress", + "story Points": 3, + "title": "[Task]: Upgrade to GitBook Pro Plan \u0026 confirm Slack plan" + }, + { + "assignees": ["EOKENAVA"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nDetermine the platform that we want to manage calendar events and availability.\r\n\r\n### Options\r\n\r\n- [Confluence](https://www.atlassian.com/software/confluence/team-calendars)\r\n- [Google Calendar](https://support.google.com/calendar/answer/37083?hl=en)\r\n- [Nextcloud Calendar](https://apps.nextcloud.com/apps/calendar)\r\n- Others as suggested by dev team\r\n\r\n### Decision Drivers\r\n\r\n#### Must Have\r\n\r\n- **HHS Network Access:** Users on the HHS network can access this shared calendar\r\n- **Private Calendar Events:** Users can create and share calendar events that are only visible to designated groups of users\r\n- **Public Calendar Events:** Users can create and share calendar events that are visible to members of the public\r\n- **Video Conference Integration:** Users can add the details for a video conference to the calendar invite, and preferably create a new meeting-specific video conference link directly from the event creation page.\r\n- **Authority to Operate (ATO):** The platform must be covered under the Grants.gov Authority to Operate (ATO)\r\n\r\n#### Nice to Have\r\n\r\n- **Open Source:** The code used to host and run the calendar is open source\r\n- **Booking Link:** Users can create and share a link through which other users can view their availability and schedule a meeting\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)\r\n- [ ] The tool selected satisfies the following decision criteria (or there is a plan to cover the gaps):\r\n - [ ] HHS Network Access\r\n - [ ] Private Calendar Events\r\n - [ ] Public Calendar Events\r\n - [ ] Video Conference Integration\r\n - [ ] Authority to Operate", + "title": "[ADR]: Shared Calendar", + "number": 100, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/100" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHqwmY", + "labels": ["docs: adr", "topic: comms", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/375" + ], + "milestone": { + "title": "Communication Platforms", + "description": "Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.", + "dueOn": "2023-08-23T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Progress", + "title": "[ADR]: Shared Calendar" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nSetup ongoing meetings that are necessary for delivery across all teams working on grants.gov and NOFO simplification. Example meetings include Team of Teams level meetings like planning, burndown check-in, demos, retros, office hours/open discussion slots, milestone planning, and team-building.\r\n\r\n### Dependencies\r\n\r\nNone\r\n\r\n### Sub-Tasks\r\n\r\n- [ ] #221 \r\n\r\n### Definition of Done\r\n\r\n- [ ] [Milestone doc: Setup recurring meetings](https://github.com/HHS/simpler-grants-gov/pull/140)\r\n- [ ] Recurring meeting schedule established: Determine necessary meetings that need to take place for effective delivery across all teams - grants.gov and NOFO simplification. \r\n- [ ] Meeting invites sent\r\n- [ ] Meeting agendas defined: prepare clear agendas for each recurring meeting, outlining the topics to be discussed and desired outcomes. \r\n- [ ] Roles are set (facilitators, rotating MC, etc) \r\n- [ ] Team norming: continuously gather feedback from meeting participants to assess the effectiveness and value of the recurring meetings. ", + "title": "[Epic]: Setup recurring meetings", + "number": 46, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/46" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIsbC8", + "labels": [ + "milestone", + "topic: comms", + "project: grants.gov", + "level: epic" + ], + "milestone": { + "title": "FY23 Q4: Open source group kickoff", + "description": "", + "dueOn": "2023-09-27T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Progress", + "title": "[Epic]: Setup recurring meetings" + }, + { + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nRelated to #102 \r\n\r\nLet's find an appropriate solution to enforce immutability on the front end, prevent bugs and write maintainable code. This includes: choosing a tool and guidelines for enforcing.\r\n\r\n### Approvers\r\n\r\n@lucasmbrown-usds, @widal001, @SammySteiner, @acouch, @daphnegold \r\n\r\n### Options\r\n\r\n- [Lint solution](https://typescript-eslint.io/rules/prefer-readonly-parameter-types/)\r\n- [immutible.js](https://immutable-js.com/)\r\n- [TypeScript built-in](https://levelup.gitconnected.com/the-complete-guide-to-immutability-in-typescript-99154f859fdb)\r\n- Do nothing at all at this time\r\n\r\n### Decision Criteria\r\n\r\n_No response_\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: Enforcing immutability on the front end ", + "number": 331, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/331" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIJzcE", + "labels": ["docs: adr", "topic: frontend"], + "milestone": { + "title": "[Epic]: Developer Tools", + "description": "Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.", + "dueOn": "2023-07-19T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[ADR]: Enforcing immutability on the front end " + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "### Summary\n\n\r\nThe proposed front-end license checking tool needs to be configured. It's unclear if the license verification is robust enough to meet our needs regarding automation.\r\n\n\n### Acceptance criteria\n\n- [ ] Check that the solution is robust enough to automatically verify licensing checks\r\n- [ ] If a different tool is chosen, update ADR #102 \r\n- [ ] Configure Github Actions to run automatically", + "title": "[Task]: Front-end license checking", + "number": 333, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/333" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIJ7Ow", + "labels": ["project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic]: Developer Tools", + "description": "Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.", + "dueOn": "2023-07-19T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Refinement", + "title": "[Task]: Front-end license checking" + }, + { + "content": { + "type": "Issue", + "body": "### Summary \r\nWe need to release a Configuration Management Plan (CMP) for the first release of the static site in September. This CMP should meet the requirements under the SIA and SSP for our first release. Stretch goal is to consider any updates for the CMP for for the next version with the opportunities data.\r\n\r\n### Dependencies\r\n#459 \r\n#464 \r\n\r\n### Acceptance Criteria\r\n- [ ] CMP for first static site release is published and approved\r\n- [ ] Evaluate if there are different requirements for the CMP needed for the upcoming release with opportunities data. \r\n", + "title": "[Task]: Configuration Management Plan (CMP) for beta launch", + "number": 465, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/465" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8JZI", + "labels": ["project: grants.gov"], + "milestone": { + "title": "[Epic] Security Approval for static site", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[Task]: Configuration Management Plan (CMP) for beta launch" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\n## Tool\r\n\r\nI would imagine that [cloudwatch synthetics](https://repost.aws/knowledge-center/cloudwatch-synthetics-performance) would be the preferred implementation, but that can be determined during the completion of the ticket.\r\n\r\n## Alerts\r\n\r\nI would imagine we would want one that pings the site frequently, returns the status code, and a text string to determine that the site is up. We could also setup alerts for health checks on the container.\r\n\r\nWe could potentially use the same alerts to provide metrics like overall up-time and site speed, but that is outside the scope of this.\r\n\r\n## Recipients\r\n\r\nThis would likely be individuals by email, phone, and / or a slack channel. This would likely be part of the IRP. This part of the task could be removed if it is determined that it is better to handle this in the IRP. This list should not be public.\n\n### Acceptance criteria\n\n- [ ] Tool for up-time monitoring determined\r\n- [ ] List of alerts determined\r\n- [ ] Recipients determined, but not publicly shared.", + "title": "[Task]: Determine Up-time monitoring tool, alerts, and alert recipients for static site", + "number": 413, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/413" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIw4sc", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "[Epic] Security Approval for static site", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[Task]: Determine Up-time monitoring tool, alerts, and alert recipients for static site" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nSetup the up-time monitoring alerts and notifications, based on the results of https://github.com/HHS/simpler-grants-gov/issues/413\r\n\r\nIf this is done in AWS, we would need to determine if this falls under IaC. \n\n### Acceptance criteria\n\n- [ ] Up-time monitoring setup\r\n- [ ] Alerts and notifications setup before launch", + "title": "[Task]: Setup Up-time Monitoring and Alerts for Static Site", + "number": 414, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/414" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIw4pY", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[Task]: Setup Up-time Monitoring and Alerts for Static Site" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nAn Incident Response Plan needs to be created for the static site. The initial work for this will involve gathering resources from Nava, MH, and HHS such as templates, previous IRPs, and other guidance.\r\n\r\n* What do to during actual incident\r\n* Technical documentation /. what is being monitored / links to logs\r\n* On-call documentation\r\n* Post-mordem\r\n\r\n### Existing Assets\r\n\r\n* https://docs.google.com/document/d/1OF9bhniWhJ-htx3cgUMFpPdBnvcrDm6Yb4BMJ5SaVT0/edit\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] IRP drafted, reviewed, and accepted.", + "title": "[Task]: Create Incident Response Plan", + "number": 415, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/415" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIw5xI", + "labels": ["project: grants.gov"], + "milestone": { + "title": "[Epic] Security Approval for static site", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[Task]: Create Incident Response Plan" + }, + { + "content": { + "type": "Issue", + "body": "### Summary \r\nWe need to release a Contingency Plan (CP) for the first release of the static site in September. This CP should meet the requirements under the SIA and SSP for our first release. Stretch goal is to consider any updates for the CP for for the next version with the opportunities data.\r\n\r\n### Dependencies\r\n#459 \r\n#464 \r\n\r\n### Acceptance Criteria\r\n- [ ] CP for first static site release is published and approved\r\n- [ ] Evaluate if there are different requirements for the CP needed for the upcoming release with opportunities data. \r\n", + "title": "[Task]: Contingency Plan (CP) for beta launch", + "number": 466, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/466" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8JZM", + "labels": ["project: grants.gov"], + "milestone": { + "title": "[Epic] Security Approval for static site", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Refinement", + "title": "[Task]: Contingency Plan (CP) for beta launch" + }, + { + "content": { + "type": "Issue", + "body": "### Summary \r\nThe SIA will cover the approaches being used to launch [beta.grants.gov](http://beta.grants.gov/) as part of our overall [grants.gov](http://grants.gov/) system, and how those approaches fit within our existing [grants.gov](http://grants.gov/) SSP. This work identifies how our approaches might require changes to it the SSP and to document and note those changes and controls. \r\n\r\n### Acceptance Criteria\r\n- [ ] Make the necessary updates to the SSP and Asset Inventory, Catalog of Control in Appendix X for the first release of the static site. \r\n- [ ] Stretch goal: note future changes and updates for the opportunities so we can be better prepared for that in the future", + "title": "[Task]: SSP alignment for beta launch", + "number": 464, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/464" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8JRE", + "labels": ["project: grants.gov"], + "milestone": { + "title": "[Epic] Security Approval for static site", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Refinement", + "title": "[Task]: SSP alignment for beta launch" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nindex.tsx's getServerSideProps isn't covered with tests yet, which is pulling down our coverage %:\r\n![image](https://github.com/HHS/simpler-grants-gov/assets/25465464/680eb6c2-b107-4ea9-ad44-fe547d441cdf)\r\n\r\nWe want to write some tests for this to make sure props are being passed properly for server side rendering.\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Test Coverage for frontend/src/pages/index.tsx is \r\n![image](https://github.com/HHS/simpler-grants-gov/assets/25465464/b56b14a9-c2cd-43c6-bcf3-85e11f124cc8)\r\n\r\n### Notes or Open Questions\r\n- Consider whether this should ServerSideProps or StaticProps\r\n- Change this to getStaticProps if you're not using server-side rendering\r\nexport const getServerSideProps: GetServerSideProps = async ({ locale }) =\u003e {\r\n const translations = await serverSideTranslations(locale ?? \"en\");\r\n return { props: { ...translations } };\r\n};", + "title": "[Task]: Increase Test Coverage for Index.tsx", + "number": 367, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/367" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIOZM0", + "labels": ["project: grants.gov"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Increase Test Coverage for Index.tsx" + }, + { + "assignees": ["sumiat"], + "content": { + "type": "PullRequest", + "body": "", + "title": "Create chat-adr", + "number": 138, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/pull/138" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIoKtc", + "milestone": { + "title": "Communication Platforms", + "description": "Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.", + "dueOn": "2023-08-23T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "reviewers": ["widal001", "lucasmbrown-usds"], + "status": "Backlog", + "title": "Create chat-adr" + }, + { + "content": { + "type": "Issue", + "body": "### Description\n\nExplore options for a way to host listserves according to the criteria listed below and select an option and document that choice as an ADR\r\n\r\n\n\n### Approvers\n\n@lucasmbrown-usds or @widal001 \r\n\n\n### Options\n\n- [Google Groups](https://support.google.com/groups/answer/46601?hl=en\u0026ref_topic=9216\u0026sjid=6954506169775690555-NA)\r\n- [GSA's listservs](http://listserv.gsa.gov/)\r\n- [Groups.io](https://groups.io/)\r\n- [Mailman GNU](https://list.org/)\r\n- [GroupServer](http://groupserver.org/)\r\n- Others as suggested by dev team\n\n### Decision Criteria\n\n- **Ease of use**: this will be used by HHS, contractors, and the general public and should be user-friendly and easy for both administrators and users to navigate, set up, and manage.\r\n- **Security**: The solution must prioritize strong security measures, consider encryption, user authentication, and protection against spam and phishing\r\n- **Cost**: Evaluate the cost implications as this tool will be used by HHS, contractors, and the general public. \r\n- **Features**: Consider features such as email list management, subscription options, message archiving, and customizable templates to meet the communication needs of your project.\r\n- **Scalability**: Ensure the solution can handle potential growth in subscribers and messages as your project expands without sacrificing performance.\r\n\r\nNice to have\r\n- **Community engagement**: Opt for a solution that encourages active participation, discussion, and collaboration within the open-source community.\r\n- **Open source**: Consider a solution that aligns with the open-source philosophy of your project, allowing for transparency, customization, and community contributions.\r\n- **Customization**: Choose a platform that allows you to customize the appearance and functionality of the listserves to match your project's branding and communication needs.\n\n### Definition of Done\n\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\n- [ ] The ADR has been reviewed and approved by the approvers listed above\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: Listserv", + "number": 378, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/378" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIoM8g", + "labels": ["docs: adr", "project: grants.gov"], + "milestone": { + "title": "Communication Platforms", + "description": "Implement chat, wiki, ticket tracking, calendar, email listservs, and email inboxes in a way accessible for all team members and the public.", + "dueOn": "2023-08-23T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Sprint Backlog", + "story Points": 3, + "title": "[ADR]: Listserv" + }, + { + "assignees": ["acouch", "sumiat"], + "content": { + "type": "Issue", + "body": "### Summary\n\nGoal: find out which applications from [grants.gov](http://grants.gov/) are getting actual awards. This will help us build our analytics funnels for understanding the effectiveness of our changes to both [grants.gov](http://grants.gov/) and NOFOs.\r\n\r\nWe can get this information from using the Funding Opportunity Number (FON) that is available in both [grants.gov](http://grants.gov/) and USAspending/DAIMS (i.e., the unique identifier of an individual Notice of Funding Opportunity or NOFO) to match the data of applications from [grants.gov](http://grants.gov/) to the data of awardees from USASpending.\r\n\r\nTo do this, we will need to: \r\n- Get access to the application data from [grants.gov](http://grants.gov/) \r\n- Download the existing data from USASpending.gov (as described below), which will have some but not all Funding Opportunity Numbers (FONs) listed\r\n- Attempt to match this data as a beginning analysis of which applications are receiving awards\r\n\r\n### Notes\r\n - Funding Opportunity Number (FON) becomes a required field for USASpending on October 1 2023\r\n - FON numbers are available here: https://www.usaspending.gov/download_center/award_data_archive\n\n### Acceptance criteria\n\n- [ ] Get a list of applications that are actually getting awards", + "title": "[Task]: Analysis of grant awards", + "number": 386, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/386" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIppMc", + "labels": ["topic: data", "project: grants.gov", "level: epic"], + "milestone": { + "title": "FY24 Q1: Public measurement dashboard", + "description": "", + "dueOn": "2023-12-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Blocked", + "title": "[Task]: Analysis of grant awards" + }, + { + "assignees": ["sumiat"], + "content": { + "type": "Issue", + "body": "### Summary\n\nWe selected Slack as the chat tool of choice in the #105. This work is to set up an onboarding process so that users can easily onboard to Slack, start using it, and navigate the tool easily. \n\n### Acceptance criteria\n\n - [x] Onboarding instructions for new users are clearly and accessibly documented in a public place.\n - [x] Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\n - [ ] At least 5 members of HHS full-time staff have been onboarded.\n - [x] At least 5 members of contractor teams (employed by HHS) have been onboarded.\n - [x] New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\n - [x] Services are accessible to all people on the HHS network, public internet, and *preferably* the White House network and most or all agency networks\n\n### out of scope\n* Onboarding the general public\n", + "title": "[Task]: Slack Implementation", + "number": 379, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/379" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIoOtA", + "labels": ["documentation", "project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic] Communications Implementation", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Review", + "title": "[Task]: Slack Implementation" + }, + { + "assignees": ["acouch", "sumiat"], + "content": { + "type": "Issue", + "body": "### Summary\n\nAs part of the preparation for the upcoming static site launch, we need to establish a comprehensive list of launch activities, assigning ownership to each activity and setting clear timelines for their completion. This plan will ensure a smooth and successful launch, covering aspects of the release process.\n\n### Acceptance criteria\n\n- [ ] document outlining launch activities, owners, and timelines.\r\n- [ ] Clear communication strategy for stakeholders / owners identified in launch\r\n- [ ] A backup and rollback plan in case of unexpected issues", + "title": "[Task]: Create launch activities plan for static site release", + "number": 401, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/401" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIvgm8", + "labels": ["project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic]: beta.grants.gov domain", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Review", + "story Points": 5, + "title": "[Task]: Create launch activities plan for static site release" + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nThis ADR will record the devision for branch naming conventions and release workflow. This may be combined with #112 , but it has been useful internally to treat them as separate tasks.\r\n\r\n### Approvers\r\n\r\n@acouch \r\n@widal001 \r\n@daphnegold \r\n@lucasmbrown-usds (optional) \r\n\r\n\r\n### Options\r\n\r\n_No response_\r\n\r\n### Decision Criteria\r\n\r\n_No response_\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in `documentation/decisions/adr` with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: Branch conventions and release workflow", + "number": 185, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/185" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH3zzo", + "labels": ["docs: adr", "project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/425" + ], + "milestone": { + "title": "[Epic]: Developer Tools", + "description": "Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.", + "dueOn": "2023-07-19T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[ADR]: Branch conventions and release workflow" + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Simpler Grants repo in sections such as, [README.md](https://github.com/HHS/simpler-grants-gov/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/simpler-grants-gov/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Simpler Grants repo README with the [README](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.d3gpx7y17a2p) section from the OS runbook. \r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Review the content in the [README](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.d3gpx7y17a2p) and update the content to make relevant for the Simpler Grants project where needed\r\n- [ ] Add content in the [Simpler Grants README](https://github.com/HHS/simpler-grants-gov/blob/main/README.md)", + "title": "[Task]: Update README with open source runbook content", + "number": 402, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/402" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIvhOI", + "labels": ["project: grants.gov", "level: epic"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/433" + ], + "milestone": { + "title": "[Epic]: Open Source Onboarding and Repository Configuration", + "description": "Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Review", + "story Points": 3, + "title": "[Task]: Update README with open source runbook content" + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "### Description\r\n\r\nIn order to streamline the development workflow, it would be helpful to establish a set of common standards or conventions around our use of GitHub and git. The goal of this ADR is to establish and document those conventions as well as recommend possible tools to help enforce these standards.\r\n\r\nThis ADR should address the following topics:\r\n\r\n- Branch naming conventions\r\n- Merge strategy \u0026 conventions\r\n- Commit conventions\r\n\r\n### Definition of Done\r\n\r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: Git Conventions", + "number": 112, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/112" + }, + "id": "PVTI_lADOABZxns4ASDf3zgHrEfo", + "labels": [ + "docs: adr", + "topic: frontend", + "topic: backend", + "project: grants.gov" + ], + "milestone": { + "title": "[Epic]: Developer Tools", + "description": "Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.", + "dueOn": "2023-07-19T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "story Points": 2, + "title": "[ADR]: Git Conventions" + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "### Summary\n\nSummary\r\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Simpler Grants repo in sections such as, [README.md](https://github.com/HHS/simpler-grants-gov/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/simpler-grants-gov/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Simpler Grants repo README with the [Core Team](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.h8u4lot1gkaa) section from the OS runbook.\r\n\r\n \n\n### Acceptance criteria\n\n- [ ] Review the content in the [Core Team](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.h8u4lot1gkaa) and update the content to make relevant for the Simpler Grants project where needed\r\n- [ ] Add content in the [Simpler Grants README](https://github.com/HHS/simpler-grants-gov/blob/main/README.md) section", + "title": "[Task]: Update \"Core Team\" with open source runbook content", + "number": 403, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/403" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIvhyA", + "labels": ["project: grants.gov", "level: epic"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/427" + ], + "milestone": { + "title": "[Epic]: Open Source Onboarding and Repository Configuration", + "description": "Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "story Points": 3, + "title": "[Task]: Update \"Core Team\" with open source runbook content" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nHook up our public facing URL :D \r\n\r\nBlocked by #299\n\n### Acceptance criteria\n\n- Visiting beta.grants.gov shows static site", + "title": "[Task]: Hook up beta.grants.gov", + "number": 384, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/384" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIpeDg", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "[Epic]: beta.grants.gov domain", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[Task]: Hook up beta.grants.gov" + }, + { + "assignees": ["andycochran"], + "content": { + "type": "Issue", + "body": "### Summary\n\nSize the content appropriately for various screen sizes. \n\n### Acceptance criteria\n\n_No response_", + "title": "[Task]: Update typography based on responsive layout", + "number": 382, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/382" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIpmqI", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/383" + ], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Update typography based on responsive layout" + }, + { + "assignees": ["daphnegold", "SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\n\nIssues in AWS ecs longs due to failed image caching.\r\n\r\n![Screenshot 2023-08-18 at 1 14 17 PM](https://github.com/HHS/simpler-grants-gov/assets/25465464/9c62f588-98fb-4046-8554-e09af0c1c0bb)\r\n\r\nMore info: https://nextjs.org/docs/messages/sharp-missing-in-production\n\n### Acceptance criteria\n\n- Image Caching works as expected\r\n- No image caching errors in the ecs logs", + "title": "[Task]: Production Image Caching issue", + "number": 390, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/390" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIrrew", + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/393" + ], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Production Image Caching issue" + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "### Description\n\nSelect and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebases.\n\n### Dependencies\n\n- [x] #42 \n- [x] #49 \n\n### Sub-Tasks\n\n- [x] #20 \n- [x] #102 \n- [x] #101 \n- [x] #92 \n- [x] #110 \n- [x] #109 \n\n### Definition of Done\n\nFor all the tools: \n ADRs documenting the selection of these tools and standards have been created and approved:\n - [x] **Automated testing framework**\n - [x] **Code quality checks** \n- [x] **Security checks** \n- [x] **Dependency management** \n- [x] **Config \u0026 secrets management** ", + "title": "[Epic]: Developer tools planning", + "number": 50, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/50" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIsHDw", + "labels": [ + "milestone", + "topic: frontend", + "topic: backend", + "project: grants.gov", + "level: epic" + ], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Done", + "title": "[Epic]: Developer tools planning" + }, + { + "assignees": ["sumiat"], + "content": { + "type": "Issue", + "body": "### Summary\n\nCreate a list of potential FAQs and answers that can be used by the Help Desk / Support staff or as a future FAQ page on the beta.grants.gov site. \n\n### Acceptance criteria\n\n- [ ] Document with FAQs\r\n- [ ] Approval of content to go through the standard content approval process", + "title": "[Task]: Help Center FAQ sheet and transcript", + "number": 400, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/400" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIverI", + "labels": ["project: grants.gov", "level: epic"], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Progress", + "story Points": 5, + "title": "[Task]: Help Center FAQ sheet and transcript" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\n\nNext.js app is missing `wget` install in Dockerfile. The fix is already known. Pull in this and other changes from the template to update app.\n\n### Acceptance criteria\n\n- App passes health check in AWS!", + "title": "[Task]: Failing health check for next.js app", + "number": 394, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/394" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIsbss", + "labels": ["topic: frontend"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/395" + ], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 4", + "startDate": "2023-08-09", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Failing health check for next.js app" + }, + { + "content": { + "type": "PullRequest", + "body": "## Summary\r\n\r\nFixes #396\r\n\r\n### Time to review: __5 mins__\r\n\r\n## Changes proposed\r\n\r\n- Updates text strings per approved content\r\n\r\n## Context for reviewers\r\n\r\nComponents were developed with draft content. This PR updates them all to the latest approved content. \r\n\r\n## Additional information\r\n\r\nI'm not sure if we should take a more robust snapshot of the index page content. I don't think we're using snapshots in this app yet, but we could do something like… \r\n\r\n```\r\n it(\"renders content\", () =\u003e {\r\n const page = render(\u003cIndex /\u003e);\r\n\r\n expect(page).toMatchSnapshot();\r\n });\r\n```\r\n\r\n…tho that snaps quite a lot. Lemme know if you have thoughts. ", + "title": "[Issue: 396] Update content", + "number": 405, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/pull/405" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIvtl4", + "labels": ["project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic]: Foundational UI", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "reviewers": ["acouch", "daphnegold", "SammySteiner"], + "status": "Done", + "title": "[Issue: 396] Update content" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nMissed that `APP_NAME` wasn't defined in the `build-and-publish.yml`. More work will be done on this topic in #285 \r\n\r\n### Acceptance criteria\r\n\r\n- Define `APP_NAME`\r\n\u003cimg width=\"1482\" alt=\"Screenshot 2023-08-23 at 2 53 24 PM\" src=\"https://github.com/HHS/simpler-grants-gov/assets/13158571/5f58314f-f1b8-45bb-90d4-ed2b7b7938d0\"\u003e\r\n", + "title": "[Task]: Fix deploy Github Actions workflow", + "number": 406, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/406" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIvzKI", + "labels": ["topic: infra"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/407" + ], + "milestone": { + "title": "[Epic] Infrastructure-as-Code", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Fix deploy Github Actions workflow" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nLet's check for broken links! Suggest we use a tool implemented into Github Actions pipeline from [marketplace](https://github.com/marketplace/actions/markdown-link-check)\r\n\r\nExample: https://github.com/usds/justice40-tool/blob/c7dd4f20d7e930e734aab3c4f143a396a3f586e6/.github/workflows/markdown-link-check.yml#L4\n\n### Acceptance criteria\n\n- [ ] Integrate markdown link check tool\r\n- [ ] Update associated ADRs #102 #101 ", + "title": "[Task]: Markdown link checker", + "number": 335, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/335" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIJ-vU", + "labels": ["topic: infra", "project: grants.gov"], + "milestone": { + "title": "[Epic]: Developer Tools", + "description": "Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.", + "dueOn": "2023-07-19T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[Task]: Markdown link checker" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nThis project uses Auto Scaling to efficiently respond to traffic spikes. This has been setup, but not configured for launch.\r\n\r\nExisting traffic patterns for grants.gov would be a good metric to gauge the configuration.\n\n### Acceptance criteria\n\n- [ ] AWS Auto Scaling is updated for launch", + "title": "[Task]: Configure Autoscaling for Static site for launch", + "number": 417, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/417" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIxF_s", + "labels": ["topic: infra"], + "milestone": { + "title": "[Epic] Security Approval for static site", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Configure Autoscaling for Static site for launch" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Simpler Grants repo in sections such as, [README.md](https://github.com/HHS/simpler-grants-gov/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/simpler-grants-gov/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Simpler Grants repo Community.md with the [Community organization and governance](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.j7smidyjn9t0) section from the OS runbook.\r\n\r\n\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Review the content in the [Community Organization and Governance](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.j7smidyjn9t0) and update the content to make relevant for the Simpler Grants project where needed\r\n- [ ] Create community.md section and add content in the Community.md section", + "title": "[Task]: Community Organization and Governance ", + "number": 419, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/419" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIxT8w", + "labels": ["project: grants.gov", "level: epic"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/432" + ], + "milestone": { + "title": "[Epic]: Open Source Onboarding and Repository Configuration", + "description": "Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Done", + "title": "[Task]: Community Organization and Governance " + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "### Summary\n\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Simpler Grants repo in sections such as, [README.md](https://github.com/HHS/simpler-grants-gov/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/simpler-grants-gov/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Simpler Grants repo README with the [Core Team](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.h8u4lot1gkaa) section from the OS runbook.\r\n\r\nFor this ticket, [CONTRIBUTING.md](https://github.com/HHS/simpler-grants-gov/blob/main/CONTRIBUTING.md) should be updated with the results of #185 and to incorporate content from the open source runbook.\r\n\n\n### Acceptance criteria\n\n- [ ] CONTRIBUTING.md is complete\r\n- [ ] CONTRIBUTING.md incorporates #185 \r\n- [ ] CONTRIBUTING.md incorporates open source runbook content", + "title": "[Task]: Update CONTRIBUTING.md with results of branch ADR and with open source runbook content", + "number": 416, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/416" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIxWxg", + "labels": ["project: grants.gov", "level: epic"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/431" + ], + "milestone": { + "title": "[Epic]: Open Source Onboarding and Repository Configuration", + "description": "Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Update CONTRIBUTING.md with results of branch ADR and with open source runbook content" + }, + { + "assignees": ["acouch"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nThe proposed back-end license checking tool, [license-check](https://pypi.org/project/pip-licenses/#verify-options), needs to be configured. It's unclear if the license verification is robust enough to meet our needs regarding automation.\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Check that pip-licenses is robust enough to automatically verify licensing checks (if not, consider another tool like [liccheck](https://pypi.org/project/liccheck/))\r\n- [ ] If a different tool is chosen, update ADR #101 \r\n- [ ] Configure Github Actions to run automatically\r\n\r\n### Open Questions or Notes\r\n- This helps to ensure all the licenses are good and check automatically. \r\n- What is the driving request behind this? What does a good outcome for this look like? Is it enough to ask, we want to use this new library, would that work? @acouch \r\n- Exclude certain licenses that are incompatible with open source. ", + "title": "[Task]: Back-end license checking", + "number": 238, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/238" + }, + "id": "PVTI_lADOABZxns4ASDf3zgH7Uq4", + "labels": ["topic: backend", "project: grants.gov"], + "milestone": { + "title": "[Epic]: Developer Tools", + "description": "Select and implement a set of developer tools that automate key code quality and security checks within the backend and frontend codebase.", + "dueOn": "2023-07-19T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[Task]: Back-end license checking" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nInfrastructure ADRs from the Nava Infra Template were recently pulled into the project: https://github.com/HHS/simpler-grants-gov/tree/main/documentation/decisions\r\n\r\nThey could either be brought into the current ADR folder, and we continue to maintain a flat directory, or we could maintain the `infra` folder, and create folder for other similar project groupings.\r\n\r\nIf we decide the latter, I would propose the following folders:\r\n\r\n```\r\napi/ \r\nfrontend/\r\ninfra/\r\nprocess/\t\r\ntool/\r\n```\r\n\r\nSince the list is getting so long, I would also recommend introducing an `index.md` that is updated by [adr-log](https://github.com/adr/adr-log).\r\n\r\nThis ticket is also an opportunity to clean up some of the ADRs as some are missing titles.\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] ADRs all in the same folder or in agreed upon folders\r\n- [ ] index.md added with adr-log tool support\r\n- [ ] ADRs have consistent names and titles\r\n- [ ] Other minor doc nits are addressed if necessary", + "title": "[Task]: Clean Up and Re-Organize ADRs", + "number": 424, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/424" + }, + "id": "PVTI_lADOABZxns4ASDf3zgIyX18", + "labels": ["documentation", "docs: adr", "project: grants.gov"], + "milestone": { + "title": "[Epic] Communications Implementation", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[Task]: Clean Up and Re-Organize ADRs" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\n[Pre-commit](https://github.com/HHS/simpler-grants-gov/blob/main/.pre-commit-config.yaml) has been added to the project. The api, frontend, and infra components have since been added to the project. Each of these has a linter ([infra's](https://github.com/navapbc/template-infra/blob/main/Makefile#L129) can be re-introduced) and tests that can be added to pre-commit so that tests and lints for specific file types can be run before committing.\r\n\r\nThis will save time, for both committers and code reviewers, as changes won't be introduced before linters and tests have been run and is widely adopted as a best practice.\n\n### Acceptance criteria\n\n- [ ] linters and tests have been added to pre-commit\r\n- [ ] documentation is updated", + "title": "[Task]: Add Linters and Testers to Pre Commit", + "number": 429, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/429" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI2bbo", + "labels": ["project: grants.gov"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Add Linters and Testers to Pre Commit" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nThe development site does not have any sensitive information or artifacts as all of the code and the workflow to generate it is public. We want the dev site to be accessible to non-technical reviewers. However, we do not want the development site to be indexed, linked to, or confused by the general public as the production site. It is OK for the password or URL to be in code or even in the documentation.\r\n\r\nThis could be implemented by:\r\n\r\n* feature flags\r\n* htpasswd\r\n* AWS auth mechanism\r\n\r\n\n\n### Acceptance criteria\n\n- [ ] development site hidden\r\n- [ ] documentation updated", + "title": "[Task]: Hide access to development site", + "number": 430, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/430" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI2cgs", + "labels": ["project: grants.gov"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Hide access to development site" + }, + { + "assignees": ["andycochran"], + "content": { + "type": "Issue", + "body": "### Summary\n\nMore prominently display a link to this GitHub repository at the top of the site.\n\n### Acceptance criteria\n\n_No response_", + "title": "[Task]: Add GitHub CTA to the top of site", + "number": 440, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/440" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI42Mk", + "labels": ["level: task"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/441" + ], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "story Points": 1, + "title": "[Task]: Add GitHub CTA to the top of site" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nThere are suggestions for vscode settings for the front-end, but not the API.\r\n\r\nThis ticket is to evaluate adding settings and / or extension settings as sensible defaults for front-end dev.\n\n### Acceptance criteria\n\n- [ ] API README.md is updated to include editor suggestions\r\nor\r\n- [ ] No suggestions are deemed useful to include", + "title": "[Task]: Add code editor suggestions to API README.md", + "number": 392, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/392" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5Afo", + "labels": ["topic: backend"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Add code editor suggestions to API README.md" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\n\r\nWe selected Github as the ticketing tool of choice in the #98 ADR. This work is to set up an onboarding process so that users can easily onboard to Github, start using it, and navigate the tool easily.\r\n\r\n\r\n \n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks", + "title": "[Task]: Ticket Tracking Implementation ", + "number": 408, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/408" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5Afw", + "labels": ["documentation", "project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic] Communications Implementation", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Ticket Tracking Implementation " + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nWe selected TBD as the shared calendar tool of choice in the TBD ticket. This work is to set up an onboarding process so that users can easily onboard to TBD, start using it, and navigate the tool easily.\n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks", + "title": "[Task]: Shared Calendar Implementation", + "number": 409, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/409" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5Af0", + "labels": ["documentation", "project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic] Communications Implementation", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Shared Calendar Implementation" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nWe selected TBD as the Video Conference tool of choice in the TBD ticket. This work is to set up an onboarding process so that users can easily onboard to TBD, start using it, and navigate the tool easily.\n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks", + "title": "[Task]: Video Conference Implementation", + "number": 410, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/410" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5Af4", + "labels": ["documentation", "project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic] Communications Implementation", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Video Conference Implementation" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nWe selected Gitbook as the shared calendar tool of choice in the #30 ticket. This work is to set up an onboarding process so that users can easily onboard to Gitbook, start using it, and navigate the tool easily.\r\n\r\n\n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks", + "title": "[Task]: Wiki Implementation", + "number": 411, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/411" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5AgA", + "labels": ["documentation", "project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic] Communications Implementation", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Wiki Implementation" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nWe selected TBD as the Retrospective tool of choice in the TBD ticket. This work is to set up an onboarding process so that users can easily onboard to TBD, start using it, and navigate the tool easily.\r\n\r\n\n\n### Acceptance criteria\n\n- Onboarding instructions for new users are clearly and accessibly documented in a public place.\r\n- Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place.\r\n- At least 5 members of HHS full-time staff have been onboarded.\r\n- At least 5 members of contractor teams (employed by HHS) have been onboarded.\r\n- At least 3 members of the general public have been onboarded.\r\n- New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days.\r\n- Services are accessible to all people on the HHS network, public internet, and preferably the White House network and most or all agency networks", + "title": "[Task]: Retro Implementation", + "number": 412, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/412" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5AgE", + "labels": ["project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic] Communications Implementation", + "description": "", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Retro Implementation" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nThe USDR team has provided [content in a runbook format ](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#heading=h.ap3hp158d2we)to support the Open Source factor of our project. This body of work focuses on incorporating that content into our Simpler Grants repo in sections such as, [README.md](https://github.com/HHS/simpler-grants-gov/blob/main/README.md), [CONTRIBUTING.md](https://github.com/HHS/simpler-grants-gov/blob/main/CONTRIBUTING.md).\r\n\r\nThis ticket is updating the Simpler Grants repo README with the [Onboarding and Engagement](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.rs17iqwr9xdg) section from the OS runbook.\r\n\r\nFor this ticket, [README.md](https://github.com/HHS/simpler-grants-gov/blob/main/README.md) should be updated with the results of #185 and to incorporate content from the open source runbook.\r\n\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] Review the content in the [Community Organization and Governance](https://docs.google.com/document/d/1CyoA57KejbNEGhaLoLYlVTYkGER5h4RlSWzBE6xgd3g/edit#bookmark=id.j7smidyjn9t0) section and update the content to make relevant for the Simpler Grants project where needed\r\n- [ ] Add content to the README.md. If there is a more appropriate location in the repo for this, the person working on the ticket can add it there. ", + "title": "Onboarding and Engagement", + "number": 420, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/420" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5AgI", + "labels": ["project: grants.gov", "level: epic"], + "milestone": { + "title": "[Epic]: Open Source Onboarding and Repository Configuration", + "description": "Configure the following things in the open source repository:\r\n\r\nLicense\r\nResponsible disclosure policy\r\nWiki (or link to wiki)\r\nContributions guide\r\nAnti-deficiency act explainer\r\nPaperwork reduction act explainer\r\nGetting started guide (USDR runbook items)", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "Onboarding and Engagement" + }, + { + "assignees": ["widal001", "sumiat"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nIn preparation for the start of more formal project reporting we want to audit the existing GitHub tickets and ensure they are following the conventions outlined in [the GitHub conventions wiki page](https://app.gitbook.com/o/cFcvhi6d0nlLyH2VzVgn/s/v1V0jIH7mb7Yb3jlNrgk/collaborating/how-we-communicate/github)\r\n\r\n### Acceptance criteria\r\n\r\n- [ ] The following label conditions are satisfied:\r\n - [ ] Every issue is tagged with (at least) one of the `project:` labels\r\n - [ ] Every issue is tagged with exactly one `level:` label and these labels are applied according to the following logic:\r\n - [ ] Issues have the `level: milestone` label if and only if they are prefixed with `[Milestone]:`\r\n - [ ] Issues have the `level: epic` label if and only if they are prefixed with `[Epic]:` \r\n - [ ] All other issues have the `level: task` label and begin with one of the following prefixes:\r\n - `[Task]` for general task-level tickets\r\n - `[ADR]` for Architecture Decision Record tickets\r\n - `[Milestone doc]:` for milestone doc tickets\r\n- [ ] The following project conditions are satisfied:\r\n - [ ] The [milestone roadmap project](https://github.com/orgs/HHS/projects/12/views/3) contains all issues (and only issues) prefixed with either `[Milestone]:` or `[Epic]` and have the `level: milestone` or `level: epic` labels\r\n - [ ] The [sprint planning](https://github.com/orgs/HHS/projects/13/views/1) project contains all issues (and only issues) that have the `level: task` labels\r\n - [ ] All issues from previous sprints are closed or have been moved to a future sprint\r\n - [ ] All issues in the current sprint that are in progress, in review, or done have been pointed\r\n- [ ] The following milestone conditions are satisfied:\r\n - [ ] Each `level: milestone` and `level: epic` issue has a corresponding GitHub milestone \r\n - [ ] Each `level: epic` issue have been added to the GitHub milestone of its parent `level: milestone` issue\r\n - [ ] Each `level: task` issue have been added to the GitHub milestone of its parent `level: epic` issue", + "title": "[Task]: Clean up and audit existing tickets", + "number": 444, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/444" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5DVU", + "labels": ["topic: product", "project: grants.gov", "level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Clean up and audit existing tickets" + }, + { + "content": { + "type": "Issue", + "body": "### Summary\n\nAs we prepare to launch the beta version of grants.gov, it is crucial to ensure that our help desk staff are well-equipped to assist users effectively. This ticket is to initiate the process of providing training to the help desk team on the new beta site.\r\n\r\n\r\n### Dependencies\r\n* Help Desk team and coordination\n\n### Acceptance criteria\n\n\r\n- [ ] Develop training curriculum / FAQ doc for the help desk staff regarding the features, functionality, and purpose of the beta site.\r\n- [ ] Include step-by-step guides for common user inquiries and issues that may arise during the beta site usage.\r\n- [ ] Schedule a training session with the help desk team to deliver the training content and address any questions or concerns.\r\n- [ ] Gather feedback from the help desk staff after the training session to identify any areas that may require further clarification or additional training.", + "title": "[Task]: Help Desk Training", + "number": 445, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/445" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI5HMY", + "labels": ["project: grants.gov"], + "milestone": { + "title": "FY23 Q4: Static Site Launch with NOFO Content", + "description": "Launch a simple site at beta.grants.gov that provides static, informational content relevant to the NOFO simplification effort. This content could include:\r\n\r\n- Information about the goals and structure of the NOFO simplification project\r\n- Links to the four NOFO prototypes\r\n- Information about how to sign up for future updates\r\n- Information about upcoming events", + "dueOn": "2023-09-13T00:00:00Z" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Sprint Backlog", + "title": "[Task]: Help Desk Training" + }, + { + "content": { + "type": "Issue", + "body": "### Comms Follow Up\n\n- [x] Send email\n- [ ] Send pigeon", + "title": "Deliver guide to group writing exercise", + "number": 447, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/447" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6Ow4", + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "Deliver guide to group writing exercise" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Train HHS staff on GitBook", + "number": 467, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/467" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6Z_4", + "labels": ["project: nofo", "level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Train HHS staff on GitBook" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Decide Grants.gov visualization for status report", + "number": 468, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/468" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6anY", + "labels": ["level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Decide Grants.gov visualization for status report" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Staff training on agile development", + "number": 479, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/479" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6avE", + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Staff training on agile development" + }, + { + "assignees": ["lucasmbrown-usds", "sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Collaborate with Gartner on OMB briefing", + "number": 480, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/480" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6aw4", + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Collaborate with Gartner on OMB briefing" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[ADR]: Unconference tools for Team of Teams", + "number": 455, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/455" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6az0", + "labels": ["level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Progress", + "title": "[ADR]: Unconference tools for Team of Teams" + }, + { + "assignees": ["widal001", "lucasmbrown-usds", "sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: 3-month plan for project", + "number": 469, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/469" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6a3o", + "labels": ["level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: 3-month plan for project" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Generate weekly report for MH", + "number": 456, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/456" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6bD0", + "labels": ["level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Generate weekly report for MH" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Automate weekly report for MH", + "number": 481, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/481" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6bNI", + "repository": "https://github.com/HHS/simpler-grants-gov", + "status": "Backlog", + "title": "[Task]: Automate weekly report for MH" + }, + { + "assignees": ["widal001", "sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Get A6 into HHS Teams", + "number": 457, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/457" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6bZk", + "labels": ["project: nofo", "level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Progress", + "title": "[Task]: Get A6 into HHS Teams" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "### Description\n\nCreate a dry-run version of the bi-weekly status report and review it in the NOFO Transformation Team of Teams weekly meeting.\n\n### Acceptance Criteria\n\n- [x] A copy of the bi-weekly status report has been created with the following content\n - [x] Past two weeks\n - [x] Next four weeks\n - [x] Grants.gov progress to goals\n- [x] This draft document has been reviewed with the NOFO Transformation Team of Teams", + "title": "[Task]: Dry run of status report", + "number": 450, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/450" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6aTc", + "labels": ["level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Dry run of status report" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task] Agenda and Unconf Board for ToT + Open Discussion", + "number": 460, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/460" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8AVM", + "labels": ["level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "In Progress", + "title": "[Task] Agenda and Unconf Board for ToT + Open Discussion" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Meet with Sumi for long-term plan and deadlines", + "number": 475, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/475" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6bOE", + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Backlog", + "title": "[Task]: Meet with Sumi for long-term plan and deadlines" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Securing HHS email for A6 team", + "number": 476, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/476" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6bQc", + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Backlog", + "title": "[Task]: Securing HHS email for A6 team" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "", + "title": "[Task]: Set up P\u0026D board for scrum/reporting", + "number": 470, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/470" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI6bdE", + "labels": ["level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Done", + "title": "[Task]: Set up P\u0026D board for scrum/reporting" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "Review proposed meeting schedule with Elizabeth, Camille, and Gartner and get a finalized proposal for regular NOFO-related and Equity-initiative related meetings.", + "title": "[Task] Review Proposed NOFO Meeting List w/Stakeholders", + "number": 478, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/478" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8A0A", + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Backlog", + "title": "[Task] Review Proposed NOFO Meeting List w/Stakeholders" + }, + { + "assignees": ["widal001"], + "content": { + "type": "Issue", + "body": "Finalize NOFO100 per-Nofo-steps with Elizabeth and Camille and put into GitHub", + "title": "[Task] Finalize per-NOFO NOFO100 Steps", + "number": 471, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/471" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8A38", + "labels": ["project: nofo", "level: task"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Backlog", + "title": "[Task] Finalize per-NOFO NOFO100 Steps" + }, + { + "assignees": ["sarahknoppA6"], + "content": { + "type": "Issue", + "body": "Plan the next on-site - maybe about 2+ weeks after the planned static site launch date (9/26) but before the end of the PoP, so we can get together and also have something to celebrate, but with enough time so that the celebrations aren't interfering with our delivery lol?", + "title": "[Task] Plan next on-site (mid-late Oct)", + "number": 477, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/477" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8A6o", + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 5", + "startDate": "2023-08-23", + "duration": 14 + }, + "status": "Backlog", + "title": "[Task] Plan next on-site (mid-late Oct)" + }, + { + "content": { + "type": "PullRequest", + "body": "## Summary\r\nFixes #419\r\n\r\n### Time to review: __15 mins__\r\n\r\n## Changes proposed\r\nAdd CODE_OF_CONDUCT.md and initial COMMUNITY_GUIDELINES.md\r\n\r\n## Context for reviewers\r\nThe community guidelines will evolve as we ramp up.\r\n", + "title": "[Issue 419] Add Code of Conduct and Community Guidelines", + "number": 432, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/pull/432" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8EB0", + "labels": ["documentation"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "reviewers": ["andycochran", "daphnegold", "SammySteiner", "decause-gov"], + "status": "Done", + "title": "[Issue 419] Add Code of Conduct and Community Guidelines" + }, + { + "content": { + "type": "PullRequest", + "body": "## Summary\r\nFixes #185 \r\n\r\n### Time to review: 20 mins\r\n\r\n## Changes proposed\r\nAdds ADR described in #185 \r\n\r\n## Context for reviewers\r\nThis merges #185 and #112 .\r\n\r\n\r\n", + "title": "[Issue 185] Branch Convention and Release Workflow ADR", + "number": 425, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/pull/425" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8EZQ", + "labels": ["documentation", "docs: adr"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "reviewers": ["andycochran", "daphnegold", "widal001", "SammySteiner"], + "status": "Done", + "title": "[Issue 185] Branch Convention and Release Workflow ADR" + }, + { + "content": { + "type": "Issue", + "body": "### Description \r\nThis ADR is to assess the necessity and feasibility of implementing a Content Management System (CMS) for our project. It aims to evaluate the pros and cons, and to help answer whether implementing a CMS is critical at this stage or if it can be deferred, identify the content that requires updates, quantify the volume of content, and establish use cases and user stories to guide our decision.\r\n\r\n### Approvers\r\n- 1 engineer not on the ticket\r\n- @widal001 and/or @lucasmbrown-usds \r\n\r\n\r\n### Decision Criteria\r\nDecision criteria that could potentially impact the decision:\r\n\r\n- **Content volume and complexity**: volume of content that needs to be managed and its complexity. **Rationale**: A headless CMS might be more valuable when dealing with large volumes of content, etc. \r\n- **Content update frequency**: assess how frequently the content needs to be updated or revised. Determine whether multiple teams members or content creators will be involved in content updates. **Rationale**: If the project requires frequent content updates, collab amongst team members (NOFO transformation team, etc.), a content approval workflow then a headless CMS could streamline these processes. \r\n- **Scalability and growth**: Consider the scalability of your project and potential future growth. Evaluate whether your project's content and features will expand over time. **Rationale**: A headless CMS could offer flexibility and scalability, making it suitable for projects with evolving content and functionality.\r\n- **Implementation and level of effort**: evaluate if there is an urgency with implementing a CMS now versus later in the project and whether there is an option for a phased implementation. **Rationale**: setting up a CMS may introduce a high initial set up phase and this could impact other priorities on the project. \r\n\r\nOpen question: \r\n- Integration and extensibility: assess the need to integrate the project with external systems, third-party tools, or custom apps. **Rationale**: CMS might be helpful when integrating with other systems. \r\n\r\n### Definition of Done\r\n\r\n- [ ] If the outcome of this ADR is that we are moving forward with a CMS system in the near-term, add an ADR ticket to evaluate CMS options. \r\n- [ ] The approvers for this decision have been identified (ideally before work on the ADR starts)\r\n- [ ] The ADR is created and stored in documentation/decisions/adr with status \"Accepted\"\r\n- [ ] The ADR has been reviewed and approved by the approvers listed above\r\n- [ ] The ADR satisfies requirements that are outlined in the ADR template\r\n- [ ] Any follow-up tickets have been created (if necessary)", + "title": "[ADR]: CMS requirement", + "number": 462, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/462" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8GeM", + "labels": ["documentation", "docs: adr", "project: grants.gov"], + "milestone": { + "title": "[Epic] CMS Planning ", + "description": "We will do an exploration around whether we should use a CMS tool, and which CMS tool to use on the beta.grants.gov site. This work should help outline the next steps for implementing the CMS tool. ", + "dueOn": "" + }, + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "Refinement", + "title": "[ADR]: CMS requirement" + }, + { + "assignees": ["daphnegold"], + "content": { + "type": "Issue", + "body": "### Summary\r\n\r\nRelated to #285\r\n\r\nCurrently CI passing is not a gate to deploys, and they are entirely separate workflows. Likely great to keep them separate workflows, but let's investigate a way to gate deploys based on CI (testing, etc). \r\n\r\nThings to investigate: `run_workflow` or `check_suite` or something else?\r\n\r\nKeep in touch with platform on changes, maybe we can integrate back into their repos.\r\n\r\n### Acceptance criteria\r\n\r\n- Implement gates to deployment\r\n- Test", + "title": "[Task]: Github Actions CI/CD flow", + "number": 463, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/463" + }, + "id": "PVTI_lADOABZxns4ASDf3zgI8I7A", + "labels": ["project: grants.gov"], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "In Progress", + "story Points": 5, + "title": "[Task]: Github Actions CI/CD flow" + }, + { + "assignees": ["SammySteiner"], + "content": { + "type": "Issue", + "body": "### Summary\n\nComplex environments causes Google Tag Manager to stop sending all enhanced metrics. We want to simplify and not use environments and instead set up filters in the analytics console.\n\n### Acceptance criteria\n\nUse the simple tag manager implementation. ", + "title": "[Task]: Simplify GA environments", + "number": 482, + "repository": "HHS/simpler-grants-gov", + "url": "https://github.com/HHS/simpler-grants-gov/issues/482" + }, + "id": "PVTI_lADOABZxns4ASDf3zgJBws0", + "labels": ["project: grants.gov"], + "linked pull requests": [ + "https://github.com/HHS/simpler-grants-gov/pull/483" + ], + "repository": "https://github.com/HHS/simpler-grants-gov", + "sprint": { + "title": "Sprint 6", + "startDate": "2023-09-06", + "duration": 14 + }, + "status": "In Progress", + "story Points": 1, + "title": "[Task]: Simplify GA environments" + } + ], + "totalCount": 142 +} diff --git a/analytics/pyproject.toml b/analytics/pyproject.toml index 5ae2a2834..2fc14f320 100644 --- a/analytics/pyproject.toml +++ b/analytics/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] authors = ["widal001 "] -description = "Python package for analyzing data related to the Grants Equity Project" +description = "Python package for analyzing data related to the Simpler Grants Project" name = "analytics" packages = [{include = "analytics", from = "src"}] readme = "README.md" @@ -8,10 +8,10 @@ version = "0.1.0" [tool.poetry.dependencies] notebook = "^7.0.0" # Goal is to replace this with another method of presenting charts -pandas = "^2.0.3" -plotly = "^5.15.0" -pydantic = "^2.0.3" -python = "^3.10" +pandas = "^2.0.3" +plotly = "^5.15.0" +pydantic = "^2.0.3" +python = "^3.10" pandas-stubs = "^2.0.2.230605" [tool.poetry.group.dev.dependencies] diff --git a/analytics/reporting.ipynb b/analytics/reporting.ipynb index 663031d4a..c921bd4ce 100644 --- a/analytics/reporting.ipynb +++ b/analytics/reporting.ipynb @@ -22,8 +22,8 @@ "### Get GitHub Project Data\n", "\n", "Pulls GitHub project data from the following projects:\n", - "- [Grants Equity Product Roadmap](https://github.com/orgs/HHS/projects/12)\n", - "- [Grants Equity Sprint Planning](https://github.com/orgs/HHS/projects/13)\n", + "- [Simpler Grants Product Roadmap](https://github.com/orgs/HHS/projects/12)\n", + "- [Simpler Grants Sprint Planning](https://github.com/orgs/HHS/projects/13)\n", "- [NOFO Project Tracker](https://github.com/orgs/HHS/projects/14)" ] }, diff --git a/analytics/src/analytics/etl/github.py b/analytics/src/analytics/etl/github.py index 6be282e6d..de506f92a 100644 --- a/analytics/src/analytics/etl/github.py +++ b/analytics/src/analytics/etl/github.py @@ -2,7 +2,7 @@ import subprocess OWNER = "HHS" -REPO = "grants-equity" +REPO = "simpler-grants-gov" SPRINT_PROJECT = 13 diff --git a/api/Dockerfile b/api/Dockerfile index 246595b73..865ea8e0a 100644 --- a/api/Dockerfile +++ b/api/Dockerfile @@ -96,7 +96,7 @@ RUN poetry install --no-root --only main # include section in pyproject.toml. Also note that if you change the name or # version section in pyproject.toml, you will need to change the dist/... to match # or the application will not build -RUN poetry build --format wheel && poetry run pip install 'dist/grants_equity_api-0.1.0-py3-none-any.whl' +RUN poetry build --format wheel && poetry run pip install 'dist/simpler_grants_gov_api-0.1.0-py3-none-any.whl' # Add project's virtual env to the PATH so we can directly run poetry scripts # defiend in pyproject.toml diff --git a/api/openapi.generated.yml b/api/openapi.generated.yml index e87505961..35b45085e 100644 --- a/api/openapi.generated.yml +++ b/api/openapi.generated.yml @@ -1,6 +1,6 @@ info: - title: Grants Equity API - description: Back end API for grants.gov + title: Simpler Grants API + description: Back end API for simpler.grants.gov contact: name: Nava PBC Engineering url: https://www.navapbc.com diff --git a/api/pyproject.toml b/api/pyproject.toml index d7c0b4719..c9d93f285 100644 --- a/api/pyproject.toml +++ b/api/pyproject.toml @@ -1,7 +1,7 @@ [tool.poetry] -name = "grants-equity-api" +name = "simpler-grants-gov-api" version = "0.1.0" -description = "Back end API for grants.gov" +description = "Back end API for simpler.grants.gov" packages = [{ include = "src" }] authors = ["Nava Engineering "] diff --git a/api/src/app.py b/api/src/app.py index 9aaf4c8ba..1f37e7063 100644 --- a/api/src/app.py +++ b/api/src/app.py @@ -53,8 +53,8 @@ def configure_app(app: APIFlask) -> None: # Set various general OpenAPI config values app.info = { - "title": "Grants Equity API", - "description": "Back end API for grants.gov", + "title": "Simpler Grants API", + "description": "Back end API for simpler.grants.gov", "contact": { "name": "Nava PBC Engineering", "url": "https://www.navapbc.com", diff --git a/documentation/README.md b/documentation/README.md index a44e96a4b..25bdf74a4 100644 --- a/documentation/README.md +++ b/documentation/README.md @@ -1,12 +1,12 @@ -# Documentation for the Grants Equity Project +# Documentation for the Simpler Grants Project -This folder contains documentation for the Grants Equity Project. +This folder contains documentation for the Simpler Grants Project. ## Goals Our vision is for the following to become true: -***Grants.gov is the simplest, most inclusive, and most gratifying way to find and apply for financial assistance ever built, inside or outside the federal government. Grants.gov helps ensure that no communities are underserved by the federal government***. +**_Grants.gov is the simplest, most inclusive, and most gratifying way to find and apply for financial assistance ever built, inside or outside the federal government. Grants.gov helps ensure that no communities are underserved by the federal government_**. See [goals.md](./goals.md) for more information about the vision and goals for the project. diff --git a/documentation/architecture/README.md b/documentation/architecture/README.md index b584e140c..140bd648e 100644 --- a/documentation/architecture/README.md +++ b/documentation/architecture/README.md @@ -5,6 +5,7 @@ This document is meant to be a living record of the architecture for the beta.gr At a high level, this system uses Github to maintain the codebase repository and run the CI/CD pipeline, and AWS to host the applications and its supporting services. ## Architecture + This is a general architecture diagram of the beta.grants.gov system. ```mermaid @@ -132,8 +133,8 @@ flowchart TB %% CI/CD Pipeline eng["Developers fas:fa-laptop-code"] --"Push to main branch fas:fa-code-branch"--> GH subgraph GH ["Github fab:fa-github"] - repo[Grants Equity Repo] - click repo href "https://github.com/HHS/grants-equity" _blank + repo[Simpler Grants Repo] + click repo href "https://github.com/HHS/simpler-grants-gov" _blank end GH --Build and Deploys Image--> iam --> ecr GH --Restarts task with new Image--> iam --> ECSS @@ -150,6 +151,7 @@ flowchart TB ``` ## AWS Hosted Infrastructure + This is an architecture diagram focusing on the AWS shared infrastructure managed by beta.grants.gov ```mermaid @@ -239,7 +241,9 @@ flowchart TD ``` ## AWS Shared Services + The beta.grants.gov is using the following non infrastructure shared services in AWS: + - [ECS: Elastic Container Service](https://aws.amazon.com/ecs/) - [ECR: Elastic Container Registry](https://aws.amazon.com/ecr/) - [SSM: System Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) @@ -248,6 +252,7 @@ The beta.grants.gov is using the following non infrastructure shared services in - [Key Management Service](https://aws.amazon.com/kms/) ## CI/CD Pipeline + This is a diagram focusing on the CI/CD pipeline ```mermaid @@ -256,8 +261,8 @@ This is a diagram focusing on the CI/CD pipeline %% CI/CD Pipeline eng["Developers fas:fa-laptop-code"] --"Push to main branch fas:fa-code-branch"--> GH subgraph GH ["Github fab:fa-github"] - repo[Grants Equity Repo] - click repo href "https://github.com/HHS/grants-equity" _blank + repo[Simpler Grants Repo] + click repo href "https://github.com/HHS/simpler-grants-gov" _blank end subgraph AWS[HHS AWS Tenant] ECR["AWS @@ -273,6 +278,7 @@ This is a diagram focusing on the CI/CD pipeline ``` ## Relevant ADRs + - [CI/CD Task Runner](../decisions/adr/2023-06-29-ci-cd-task-runner.md) - [Database Choices](../decisions/adr/2023-07-05-db-choices.md) - [Front-End Language](../decisions/adr/2023-07-10-front-end-language.md) diff --git a/documentation/decisions/README.md b/documentation/decisions/README.md index c3d2c4f02..e1863307e 100644 --- a/documentation/decisions/README.md +++ b/documentation/decisions/README.md @@ -1,6 +1,5 @@ # Architecture Decision Records (ADRs) - ## About ADRs ### Why do we need to document architecture decisions? @@ -18,9 +17,9 @@ Developing software involves making lots of decisions. Documenting these decisio Almost all of engineering and code development involves making choices, so how do you know when a particular choices rises to the level of an architecture decision and requires an ADR? ->An Architectural Decision (AD) is a software design choice that addresses a functional or non-functional requirement that is architecturally significant. +> An Architectural Decision (AD) is a software design choice that addresses a functional or non-functional requirement that is architecturally significant. > ->Source: [ADR GitHub Organization](adr) +> Source: [ADR GitHub Organization](adr) Another way to recognize when making a decision related to your project constitutes an architecture decision is to ask yourself three questions about that decision: @@ -43,12 +42,14 @@ While architecture decisions come in all shapes and sizes, some common examples When an architectural decision needs to be recorded, please use the following steps: -1. [Create a new ADR ticket in GitHub](https://github.com/HHS/grants-equity/issues/new/choose) +1. [Create a new ADR ticket in GitHub](https://github.com/HHS/simpler-grants-gov/issues/new/choose) 2. Identify the approvers for this decision, i.e. individuals or groups who must sign off on the decision before the ADR can be merged (ideally this happens before work starts on the ADR) 3. Draft an ADR in a branch named after the ticket, then open a Pull Request (PR) - - Use the `{YYYY-MM-DD}-{description}.md` naming convention and copy the [template](./template.md) into the [adr](./adr/) directory (name the file with the date it was created, which may differ from the date the decision was made, PR was merged, or file was last modified) - - The ADR should use the status "Active" - - If this decision deprecates an ADR, update its status to indicate the reason (e.g. `"Superseded By [xxx](yyyymmdd-xxx.md)"`), and move it to the [deprecated](./deprecated/) directory + +- Use the `{YYYY-MM-DD}-{description}.md` naming convention and copy the [template](./template.md) into the [adr](./adr/) directory (name the file with the date it was created, which may differ from the date the decision was made, PR was merged, or file was last modified) +- The ADR should use the status "Active" +- If this decision deprecates an ADR, update its status to indicate the reason (e.g. `"Superseded By [xxx](yyyymmdd-xxx.md)"`), and move it to the [deprecated](./deprecated/) directory + 4. Invite the approvers to review the PR and provide feedback or approve the decision 5. Once the approvers have signed off on the decision, merge the PR into the `main` branch 6. Create any follow-up tickets that are needed to implement the decision outlined in the ADR (if necessary) diff --git a/documentation/decisions/adr/2023-06-26-recording-architecture-decisions.md b/documentation/decisions/adr/2023-06-26-recording-architecture-decisions.md index db6460342..5150b2e95 100644 --- a/documentation/decisions/adr/2023-06-26-recording-architecture-decisions.md +++ b/documentation/decisions/adr/2023-06-26-recording-architecture-decisions.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-06-26 -- **Related Issue:** [#34](https://github.com/HHS/grants-equity/issues/34) +- **Related Issue:** [#34](https://github.com/HHS/simpler-grants-gov/issues/34) - **Deciders:** Lucas Brown, Aaron Couch, Billy Daly - **Tags:** ADRs diff --git a/documentation/decisions/adr/2023-06-29-ci-cd-task-runner.md b/documentation/decisions/adr/2023-06-29-ci-cd-task-runner.md index 02326ea2e..5fb0f2f0c 100644 --- a/documentation/decisions/adr/2023-06-29-ci-cd-task-runner.md +++ b/documentation/decisions/adr/2023-06-29-ci-cd-task-runner.md @@ -3,7 +3,7 @@ - **Status:** Active - **Last Modified:** 2023-06-29 - **Related Issue:** [ADR: Task Runner and CI / CD interface #92 -](https://github.com/HHS/grants-equity/issues/92) + ](https://github.com/HHS/simpler-grants-gov/issues/92) - **Deciders:** Lucas Brown, Aaron Couch, Billy Daly - **Tags:** Continuous Integration, Continuous Deployment @@ -29,4 +29,3 @@ The task runner should be able to run on commits and pull requests and support b ## Decision Outcome Github Actions offers competitive speed, developer support, shared / resusable actions, is part of Github which is already approved on the project and part of the [Fedramp marketplace](https://marketplace.fedramp.gov/products/FR1812058188), and is free. - diff --git a/documentation/decisions/adr/2023-06-30-api-language.md b/documentation/decisions/adr/2023-06-30-api-language.md index 44fdfecd6..feac53008 100644 --- a/documentation/decisions/adr/2023-06-30-api-language.md +++ b/documentation/decisions/adr/2023-06-30-api-language.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-06-30 -- **Related Issue:** [#27](https://github.com/HHS/grants-equity/issues/27) +- **Related Issue:** [#27](https://github.com/HHS/simpler-grants-gov/issues/27) - **Deciders:** Lucas Brown, Aaron Couch, Sammy Steiner, Daphne Gold, Billy Daly ## Context and Problem Statement @@ -24,21 +24,21 @@ In addition to the Nava and HHS teams ability to develop and maintain an API in - Javascript and Node - Java - ## Decision Outcome + Chosen option: Python, because it is free and open source and designed to be easy for anyone to learn quickly and contribute. Additionally, while all the languages can support the technical needs, Python in particular is optimized to handle the large and complex grants.gov dataset, and makes other parts of the project simpler, including ETL and data analysis for the analytics endpoints. ### Positive Consequences + - We're hopeful that this choice will lead to open source contribution and adoption - We can make use of python libraries designed for complex data queries to quickly deliver features and analytics ### Negative Consequences -- Will require some context switching when going from work on the API to the front-end +- Will require some context switching when going from work on the API to the front-end ## Pros and Cons of the Options - ### Python Python as a scripting language is fast and productive. Web-based applications can be created quickly and the code is highly readable. Python syntax is easy to understand, well-defined and extensible. APIs built over Python are highly scalable, reliable, and fast. @@ -54,7 +54,6 @@ Because of its popularity in the open source community, Python makes it easy for - **Cons** - Single threaded locking of GIL can make computationally expensive operations slower than other options - ### Javascript and Node Node JS is used to build fast, highly scalable network applications based on an event-driven non-blocking input/output model, single-threaded asynchronous programming. It also suits well for microservice-based products. Such Node.js utility is accomplished by such characteristics as support of a non-blocking input-output and a significant number of connections. @@ -71,7 +70,6 @@ Because of its popularity in the open source community, Javascript and Node make - Not as mature as other options - Responsiveness may be slowed by any CPU intensive computation - ### Java Java is widely used for building enterprise-scale web applications as it is one of the most stable languages on the market. Java’s advantages include platform independence, multi-threaded processing, automatic garbage collection, and security. @@ -86,7 +84,6 @@ Because of its proprietary nature, Java is not as popular with the open source c - Compilation and abstraction by the Java Virtual Machine makes performance slower - Nava team is not as familiar with Java as they are with the other options - -- Truss has developed [Figma assets using USWDS](https://www.figma.com/community/file/836611771720754351/U.S.-Web-Design-System-(USWDS)) +- Truss has developed [Figma assets using USWDS]() - Figma's free tier does not require FOSS contributors to purchase licenses - Figma has a robust community of plugins and integrations - Includes Figjam (tho this may be redundant, depending on chosen whiteboarding tool) diff --git a/documentation/decisions/adr/2023-07-05-chat-adr.md b/documentation/decisions/adr/2023-07-05-chat-adr.md index b4b22c3b7..fdd949d97 100644 --- a/documentation/decisions/adr/2023-07-05-chat-adr.md +++ b/documentation/decisions/adr/2023-07-05-chat-adr.md @@ -2,7 +2,7 @@ - **Status:** Accepted - **Last Modified:** 2023-07-05 -- **Related Issue:** [#105](https://github.com/HHS/grants-equity/issues/105) +- **Related Issue:** [#105](https://github.com/HHS/simpler-grants-gov/issues/105) - **Deciders:** Lucas Brown and Billy Daly - **Tags:** docs:adr topic:comms @@ -25,8 +25,6 @@ We believe that a chat tool can enhance communication and collaboration in real- - **Self-hosting vs. cloud-based:** evaluate whether the solutions are self-hosted where we have complete control over data and infrastructure or cloud-based that handles hosting and maintenance. - **Open-source:** a solution that offers open-source is more likely to align with HHS values and provide transparency, customizability, community collaboration, longevity and continuity, cost effectiveness, and overall autonomy for our project. - - ## Options Considered - [Slack](https://slack.com/features) @@ -37,12 +35,10 @@ We believe that a chat tool can enhance communication and collaboration in real- - [Mattermost](https://mattermost.com/) - [Zulip](https://zulip.com/) - ## Decision Outcome At this time, it is recommended to use a basic paid version of Slack for internal and public users. Slack offers a wide range of functionality and features, making it a popular and widely adopted chat tool. It has robust integration capabilities and a user-friendly experience. The team's familiarity with Slack reduces the learning curve. Inviting the public to our paid version of Grants.gov Slack instance will allow us to get an understanding of number of users joining and usage patterns for chat. However, it's important to be mindful of pricing implications as the project grows. We should reassess if there is growth beyond 400 users. Moving to Slack’s free version is an option for the public, open-source community. Slack's free version has limitations like data retention but would be more cost-efficient. - ### Positive Consequences - Enhanced collaboration @@ -61,57 +57,57 @@ At this time, it is recommended to use a basic paid version of Slack for interna - Communication fragmentation - Incompatible with existing workflows - ## Pros and Cons of the Options -✅ Feature available, meets requirement -❌ Feature not available, does not meet requirement -🔄 Partial feature, limited feature availability, feature in progress or undergoing improvements -1-3 Strength level, (1 being lowest, 3 being strongest) -❓Unknown - -| Evaluation criteria | [Slack](https://slack.com/features) | [Discord](https://discord.com/) | [Microsoft Teams](https://www.microsoft.com/en-us/microsoft-teams/group-chat-software) | [GitHub Discussions](https://docs.github.com/en/discussions/collaborating-with-your-community-using-discussions/about-discussions) | [Rocket.chat](https://www.rocket.chat/) | [Mattermost](https://mattermost.com/) | [Zulip](https://zulip.com/) | -| ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| Experience with current team | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | -| Self-hosting | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | -| Open-source | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | -| Voice | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | -| Video | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | -| Text | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | -| Accessibility options | ✅ | 🔄 | ✅ | ✅ | 🔄 | ✅ | 🔄 | -| Accessibility: keyboard navigation | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| Accessibility: Screen reader compatibility | ✅ | 🔄 | ✅ | ✅ | 🔄 | ✅ | ✅ | -| Accessibility: Color contrast options | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| Accessibility: Assistive technologies | ✅ | 🔄 | ✅ | ✅ | ✅ | ✅ | 🔄 | -| Public users | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | -| Metrics available | 2 | 1 | 2 | 2 | 2 | 2 | 2 | -| Community and support | 3 | 2 | 3 | 3 | 2 | 2 | 2 | -| Usability | 3 | 3 | 2 | 2 | 3 | 3 | 2 | -| Integration | 3 | 2 | 2 | 2 | 3 | 3 | 2 | -| Security | 3 | 2 | 3 | 2 | 2 | 3 | 3 | -| Public channels | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| Private channels | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | -| Threaded replies | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | -| Emoji reactions | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | -| Cost | Free,
Pro $7.25, Business $12.50 USD per active user per month billed annually.
Or, $15 USD per active user per month, billed monthly.
FOSS community users must request access | Free to run, free to use | Part of MS365 subscription plans
$12.50/user/month | $3.67 per user/month, billed annually; | Free + own hosting costs; paid version available $7
/user/month
Minimum of 25 users
or
$35
/agent/month
Minimum of 5 agents | free + own hosting costs; paid version available $10 per user/month, billed annually; enterprise pricing with requested quote | Free + own hosting costs; paid version available$6.67 per user per month, billed annually | - +✅ Feature available, meets requirement +❌ Feature not available, does not meet requirement +🔄 Partial feature, limited feature availability, feature in progress or undergoing improvements +1-3 Strength level, (1 being lowest, 3 being strongest) +❓Unknown + +| Evaluation criteria | [Slack](https://slack.com/features) | [Discord](https://discord.com/) | [Microsoft Teams](https://www.microsoft.com/en-us/microsoft-teams/group-chat-software) | [GitHub Discussions](https://docs.github.com/en/discussions/collaborating-with-your-community-using-discussions/about-discussions) | [Rocket.chat](https://www.rocket.chat/) | [Mattermost](https://mattermost.com/) | [Zulip](https://zulip.com/) | +| ------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- | -------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | +| Experience with current team | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ | ❌ | +| Self-hosting | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | +| Open-source | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | +| Voice | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | +| Video | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ❌ | +| Text | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ | +| Accessibility options | ✅ | 🔄 | ✅ | ✅ | 🔄 | ✅ | 🔄 | +| Accessibility: keyboard navigation | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | +| Accessibility: Screen reader compatibility | ✅ | 🔄 | ✅ | ✅ | 🔄 | ✅ | ✅ | +| Accessibility: Color contrast options | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | +| Accessibility: Assistive technologies | ✅ | 🔄 | ✅ | ✅ | ✅ | ✅ | 🔄 | +| Public users | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | ✅ | +| Metrics available | 2 | 1 | 2 | 2 | 2 | 2 | 2 | +| Community and support | 3 | 2 | 3 | 3 | 2 | 2 | 2 | +| Usability | 3 | 3 | 2 | 2 | 3 | 3 | 2 | +| Integration | 3 | 2 | 2 | 2 | 3 | 3 | 2 | +| Security | 3 | 2 | 3 | 2 | 2 | 3 | 3 | +| Public channels | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | +| Private channels | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | +| Threaded replies | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | +| Emoji reactions | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | ✅ | +| Cost | Free,
Pro $7.25, Business $12.50 USD per active user per month billed annually.
Or, $15 USD per active user per month, billed monthly.
FOSS community users must request access | Free to run, free to use | Part of MS365 subscription plans
$12.50/user/month | $3.67 per user/month, billed annually; | Free + own hosting costs; paid version available $7
/user/month
Minimum of 25 users
or
$35
/agent/month
Minimum of 5 agents | free + own hosting costs; paid version available $10 per user/month, billed annually; enterprise pricing with requested quote | Free + own hosting costs; paid version available$6.67 per user per month, billed annually | ## Pricing breakdown for top choices To understand the cost as we grow and expand chat to become accessible to public users, we want to evaluate costs for our top chat options: Slack and Rocket.chat -**Slack:**  +**Slack:** For free version of Slack: + - No limit to channels or users - Data retention for 90 days - Limitations to message and file visibility limit at 90 days - You can add up to 10 third-party or custom apps. For paid versions of Slack: -- Guest Roles (External users that are not part of a paid workspace). Host pays for the guest roles for mult-channel use. Single channel based off number of members on host workspace.  -- Slack Connect (requires both your workspace and their workspace be on a paid plan or start a trial). There is no additional charge on either workspace. Slack Connect (More for users that already have their own paid workspace). These users can have multi-channel access at no additional charge.  +- Guest Roles (External users that are not part of a paid workspace). Host pays for the guest roles for mult-channel use. Single channel based off number of members on host workspace. + +- Slack Connect (requires both your workspace and their workspace be on a paid plan or start a trial). There is no additional charge on either workspace. Slack Connect (More for users that already have their own paid workspace). These users can have multi-channel access at no additional charge. - Guest users (Allows for the host workspace to invite users under the host plan) @@ -119,9 +115,6 @@ For paid versions of Slack: - Single-Channel Guests are free and can only access one channel. For every paid active member in your workspace, you can add up to 5 guests. For example, if you have 10 members, you can invite up to 50 Single-Channel Guests. - Multi Channel guests would be billed like a regular member of your workspace. - - - **Rocket.chat** - Rocket.chat has a couple different pricing models: @@ -129,24 +122,24 @@ For paid versions of Slack: - Omni-channel model: that charges by unique monthly active users - Model to charge for monthly active users (not unique) - Rocket.chat does not currently have a use case where public users need to access or view channels and interact with channels, but could be willing to work out a solution. -- Rocket.Chat's self-hosted community edition is free forever. There are limitations to the free version including high availability and scalability. - Rocket.chat’s free community edition is limited to a single instance and designed to support 150-200 users. We have the ability to build the screen reader functionality on our own instance. - - +- Rocket.Chat's self-hosted community edition is free forever. There are limitations to the free version including high availability and scalability. - Rocket.chat’s free community edition is limited to a single instance and designed to support 150-200 users. We have the ability to build the screen reader functionality on our own instance. ## Links Government offerings + - [Slack for Government](https://slack.com/resources/why-use-slack/a-closer-look-at-govslack) - [Microsoft](https://learn.microsoft.com/en-us/microsoftteams/expand-teams-across-your-org/teams-for-government-landing-page) - [Github](https://government.github.com/) - [Rocket.chat](https://www.rocket.chat/government) - [Mattermost](https://mattermost.com/solutions/industries/government/) - Offerings - - [Enterprise](https://www.rocket.chat/enterprise) - - [Community](https://www.rocket.chat/community) - - [Slack Admins: guests vs channels in Slack Connect](https://slack.com/resources/slack-for-admins/guests-vs-channels-in-slack-connect) - - [Guest roles for paid version](https://slack.com/help/articles/202518103-Understand-guest-roles-in-Slack) - - [Slack Connect Guide for external organizations]() - - [Slack Free workspace usage limits](https://slack.com/help/articles/115002422943-Usage-limits-for-free-workspaces) - - [Discord](https://discord.com/open-source) +Offerings + +- [Enterprise](https://www.rocket.chat/enterprise) +- [Community](https://www.rocket.chat/community) +- [Slack Admins: guests vs channels in Slack Connect](https://slack.com/resources/slack-for-admins/guests-vs-channels-in-slack-connect) +- [Guest roles for paid version](https://slack.com/help/articles/202518103-Understand-guest-roles-in-Slack) +- [Slack Connect Guide for external organizations](https://slack.com/help/articles/115004151203-Slack-Connect-guide--work-with-external-organizations) +- [Slack Free workspace usage limits](https://slack.com/help/articles/115002422943-Usage-limits-for-free-workspaces) +- [Discord](https://discord.com/open-source) diff --git a/documentation/decisions/adr/2023-07-05-db-choices.md b/documentation/decisions/adr/2023-07-05-db-choices.md index 363b86d7b..03985e5b1 100644 --- a/documentation/decisions/adr/2023-07-05-db-choices.md +++ b/documentation/decisions/adr/2023-07-05-db-choices.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-07-05 -- **Related Issue:** [#27](https://github.com/HHS/grants-equity/issues/104) +- **Related Issue:** [#27](https://github.com/HHS/simpler-grants-gov/issues/104) - **Deciders:** Lucas Brown, Aaron Couch, Gina Carson, Andy Cochran ## Context and Problem Statement @@ -10,12 +10,12 @@ This ADR is to formalize a series of architectural decisions about how data is stored, including the type of database we will use and the platform we'll use host it. This ADR will contain the evaluation and selection of the type of the database, the database management system (DBMS), and database hosting service. ## Decision Drivers + Type of Database: - Nature of the NOFO and grant data that we're storing - Volume of data and performance considerations - DBMS Selection: - Hosting options @@ -24,7 +24,6 @@ DBMS Selection: - Trusted libraries that support interfacing with this database in the language we've chosen for our API - An open source version of this DBMS is available for self hosting or running locally - Database Hosting Service: - FedRAMP compliant deployment option @@ -32,18 +31,16 @@ Database Hosting Service: - Cost considerations related to hosting the database, in terms of direct operating costs as well as team resources - Advanced service offerings such as read replicas and automatic backups - ## Decision Outcome - ### Type of Database The target type of database selected for Grants.gov is a relational database management system. This was evaluated and selected based on several factors including the relational nature of the NOFO and grant data that we're storing as well as the ACID compliance and flexibility that a relational database can offer. - ### Database Management System The RDBMS selected for Grants.gov is PostgreSQL. This is due to a variety of factors, including: + - Resource familiarity with PostgreSQL as a database system - Improved performance for high-frequency write operations and complex queries as opposed to MySQL - PostgreSQL support of most advanced database features such as materialized views @@ -53,11 +50,10 @@ The RDBMS selected for Grants.gov is PostgreSQL. This is due to a variety of fac ### Database Hosting Service The database hosting service selected is Amazon RDS. This is due to several factors: + - FedRAMP compliant deployment - Reduction of many tasks and IT labor savings when compared to EC2 or on-premise including backups, server patching, automatic backups, scaling, etc. - - ## Links - [Comparison of MySQL and PostgreSQL](https://aws.amazon.com/compare/the-difference-between-mysql-vs-postgresql/#:~:text=Summary%20of%20differences%3A%20PostgreSQL%20vs%20MySQL,-Category&text=MySQL%20is%20a%20purely%20relational%20database%20management%20system.,object%2Drelational%20database%20management%20system.&text=MySQL%20has%20limited%20support%20of,views%2C%20triggers%2C%20and%20procedures.) diff --git a/documentation/decisions/adr/2023-07-07-api-framework.md b/documentation/decisions/adr/2023-07-07-api-framework.md index 7febab042..97235de13 100644 --- a/documentation/decisions/adr/2023-07-07-api-framework.md +++ b/documentation/decisions/adr/2023-07-07-api-framework.md @@ -2,12 +2,12 @@ - **Status:** Active - **Last Modified:** 2023-07-07 -- **Related Issue:** [#28](https://github.com/HHS/grants-equity/issues/28) +- **Related Issue:** [#28](https://github.com/HHS/simpler-grants-gov/issues/28) - **Deciders:** Lucas brown, Aaron Couch, Billy Daly, Sammy Steiner, Daphne Gold, Gina Carson, Sumi Thaiveettil, Eshter Oke ## Context and Problem Statement -This ADR is to decide what python framework to use for the back-end API of grants.gov. Python was chosen as the language for the back-end API in [ADR #3](https://github.com/HHS/grants-equity/blob/main/documentation/decisions/adr/0003-api-language.md). +This ADR is to decide what python framework to use for the back-end API of grants.gov. Python was chosen as the language for the back-end API in [ADR #3](https://github.com/HHS/simpler-grants-gov/blob/main/documentation/decisions/adr/0003-api-language.md). ## Decision Drivers @@ -30,16 +30,17 @@ This ADR is to decide what python framework to use for the back-end API of grant Chosen option: Flask + APIFlask, because it is well established with a broad community of developers and provides good tooling to move quickly. It has great documentation to help folks contribute quickly. Additionally the Nava Flask template recently adopted it, so we can leverage the template to get going quickly with a well engineered solution. ### Positive Consequences + - Leverages the Nava open source template - OpenAPI specs can be auto generated from models in code ### Negative Consequences + - Code first paradigm, we should auto generate api documentation in the CI/CD pipeline to ensure it stays up to date with the code - This is a relatively new library, so we should ensure code modularity in case we need to swap it out in the future ## Pros and Cons of the Options - ### Flask Flask is a simple, but extensible, micro web framework for python created in 2010 that is easy to learn and build with. While it is capable on its own, it relies on other libraries to add core functionality. It was written to be pythonic, meaning it leverages python's unique features and follows python's principles of being readable and maintainable. Flask depends on the Werkzeug WSGI toolkit, the Jinja template engine, and the Click CLI toolkit. @@ -53,7 +54,6 @@ Flask is a simple, but extensible, micro web framework for python created in 201 - Lack of standardization means more decision making and good code quality is very important - Async operation takes additional planning and work - ### Flask + Connexion This deserves its own option because it fundamentally changes the way that we would develop with python and flask. With connexion, you first write your API contract, using the Swagger/OpenAPI standard. Then, the endpoints you defined will be mapped to your python view functions, ensuring that your python code does what your API contract says it does. This makes it rather unique in the landscape of python web frameworks, as most other tools start from your code instead of the other way around. @@ -65,7 +65,6 @@ This deserves its own option because it fundamentally changes the way that we wo - **Cons** - Same as Flask - ### Flask + APIFlask This deserves its own option because it adds a lot of support to Flask for a more traditional code first api approach, in contrast to connexion. APIFlask is a lightweight Python web API framework based on Flask and marshmallow-code projects. It's easy to use, highly customizable, ORM/ODM-agnostic, and 100% compatible with the Flask ecosystem. The Nava Flask template repo has recently replaced connexion with apiflask, documented in [connexion replacement decision record](https://github.com/navapbc/template-application-flask/blob/main/docs/decisions/0001-connexion-replacement.md). @@ -78,10 +77,9 @@ This deserves its own option because it adds a lot of support to Flask for a mor - Same as Flask - Relatively young project - ### FastApi -FastAPI is a modern, fast (high-performance), web framework created in 2018 for building APIs with python 3.7+ based on standard python type hints. This implementation-first library is designed as a performant and intuitive alternative to existing python API frameworks. +FastAPI is a modern, fast (high-performance), web framework created in 2018 for building APIs with python 3.7+ based on standard python type hints. This implementation-first library is designed as a performant and intuitive alternative to existing python API frameworks. - **Pros** - Designed for speed and can perform asynchronous operations natively (if needed) @@ -92,7 +90,6 @@ FastAPI is a modern, fast (high-performance), web framework created in 2018 for - As the newest of the frameworks, it has the smallest community of support - Can have memory management issues - ### Django Django is a full stack python web framework created in 2005 that follows the model–template–views (MTV) architectural pattern. It is maintained by the Django Software Foundation (DSF), an independent organization established in the US as a 501(c)(3) non-profit. Django is well documented and includes everything you may need in a full stack application already installed. @@ -104,7 +101,6 @@ Django is a full stack python web framework created in 2005 that follows the mod - Monolithic style, steep learning curve, and large codebase make it difficult for collaborators - Assumes both front end and back end are included in the monolith application - ## Links + Option #2 is preferred. We would like to use Ruff for linting and add some additional libraries for security and license checks. We will be using the Flask template repository for initial project set up, which already relies on Flake8 and several additional extensions (bugbear, alfred, bandit) that would be redundant with Ruff. Some extra work will need to be done to migrate away from Flake8 and to Ruff without any regression. Recommend using [flake8-to-ruff](https://pypi.org/project/flake8-to-ruff/) to convert existing configuration. @@ -58,6 +61,7 @@ We will be using the Flask template repository for initial project set up, which There are some additional packages that we desire to use that are not included in the Flask template: safety & pip-licenses. As we iterate on the tools that work for us, we would like to investigate a possible switch to Pyright in the future as well. + ## Other Options Adopting [Tox](https://tox.wiki/en/latest/) as a testing / linting manager with some of the libraries. diff --git a/documentation/decisions/adr/2023-07-10-front-end-language.md b/documentation/decisions/adr/2023-07-10-front-end-language.md index d91def4bd..9c11ab021 100644 --- a/documentation/decisions/adr/2023-07-10-front-end-language.md +++ b/documentation/decisions/adr/2023-07-10-front-end-language.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-07-10 -- **Related Issue:** [#96](https://github.com/HHS/grants-equity/issues/96) +- **Related Issue:** [#96](https://github.com/HHS/simpler-grants-gov/issues/96) - **Deciders:** Lucas Brown, Aaron Couch, Billy Daly, Sammy Steiner ## Context and Problem Statement @@ -52,7 +52,6 @@ JavaScript is a lightweight, interpreted programming language with first-class f - **Cons** - Loosely typed - ### TypeScript TypeScript is a syntactic superset of JavaScript which adds static typing and is transpiled down to regular JavaScript when building the application. While TypeScript is a relatively new "language" it's gaining popularity quickly as it's more of a enhancement to JavaScript than just another new language. @@ -73,7 +72,6 @@ Python is a high-level, dynamically typed general-purpose programming language. - Will still require JavaScript for client side functionality - Python is not as well supported for front-end tasks as it is for back-end tasks - ### Java Java is widely used for building enterprise-scale web applications as it is one of the most stable languages on the market. Java’s advantages include platform independence, multi-threaded processing, automatic garbage collection, and security. diff --git a/documentation/decisions/adr/2023-07-10-wiki-platform.md b/documentation/decisions/adr/2023-07-10-wiki-platform.md index e702a395a..efb8548c2 100644 --- a/documentation/decisions/adr/2023-07-10-wiki-platform.md +++ b/documentation/decisions/adr/2023-07-10-wiki-platform.md @@ -2,7 +2,7 @@ - **Status:** Accepted - **Last Modified:** 2023-07-10 -- **Related Issue:** [#30](https://github.com/HHS/grants-equity/issues/30) +- **Related Issue:** [#30](https://github.com/HHS/simpler-grants-gov/issues/30) - **Deciders:** Lucas Brown, Aaron Couch, Billy Daly, Sarah Knopp, Sumi Thaiveettil - **Tags:** communucations, open source, wiki @@ -33,15 +33,15 @@ The goal of this ADR is to evaluate a series of potential wiki platforms and det - **Data Access:** Content generated and stored in the wiki should be accessible outside of the wiki platform, either through syncing content to an HHS owned repository or through an official API. - **Machine Readability:** The wiki platform should also support storing and exposing content in a machine-readable format so that certain types structured data can be managed within and accessed from the wiki without parsing. - **Open Source:** The tool used to manage and host the wiki content should be open source, if possible. -- **Authority to Operate (ATO):** Because the wiki is a support tool rather than a production service, it doesn't *need* to be covered under the Grants.gov ATO. However, being covered under the existing ATO is an advantage if, in the future, we want to use it to support our production service (e.g. hosting training materials for grant applicants or grantors) +- **Authority to Operate (ATO):** Because the wiki is a support tool rather than a production service, it doesn't _need_ to be covered under the Grants.gov ATO. However, being covered under the existing ATO is an advantage if, in the future, we want to use it to support our production service (e.g. hosting training materials for grant applicants or grantors) ## Options Considered -- [Confluence](confluence) - *NOT chosen* because of limits around data access and content review -- [Notion](notion) - *NOT chosen* because of limits on version history and content review -- [GitHub Wiki](gh-wiki) - *NOT chosen* because of limited feature set and issues with usability -- [GitBook](gitbook) - *Chosen* because of support for content review and GitHub syncing -- [WikiJS](wiki-js) - *NOT chosen* because of issues with usability and requirements for ongoing maintenance +- [Confluence](confluence) - _NOT chosen_ because of limits around data access and content review +- [Notion](notion) - _NOT chosen_ because of limits on version history and content review +- [GitHub Wiki](gh-wiki) - _NOT chosen_ because of limited feature set and issues with usability +- [GitBook](gitbook) - _Chosen_ because of support for content review and GitHub syncing +- [WikiJS](wiki-js) - _NOT chosen_ because of issues with usability and requirements for ongoing maintenance ## Decision Outcome @@ -76,21 +76,21 @@ If we can't get coverage for GitBook under the existing ATO, we should pursue on | Factor | Confluence | Notion | GitHub Wiki | GitBook | Wiki.js | | --------------------------- | :--------: | :----: | :---------: | :-----: | :-----: | -| Usability | 3 | 2 | 1 | 2 | 1 | -| Public Access | 🔄 | 🔄 | ✅ | ✅ | ✅ | -| Content Review | 🔄 | ❌ | ❌ | ✅ | 🔄 | -| Comments | ✅ | ✅ | ❌ | ✅ | 🔄 | -| Version History | ✅ | 🔄 | ✅ | ✅ | 🔄 | -| Multi-Media | ✅ | ✅ | ❌ | ✅ | ✅ | -| I18n | 🔄 | 🔄 | ❌ | ✅ | ✅ | -| Web Analytics | ✅ | ✅ | ❌ | ✅ | 🔄 | -| Onboarding Cost Efficiency | 2 | 2 | 3 | 2 | 1 | -| Maintenance Cost Efficiency | 2 | 2 | 3 | 2 | 1 | -| External Contributions | ✅ | ✅ | 🔄 | 🔄 | 🔄 | -| Data Access | 🔄 | 🔄 | ✅ | ✅ | ✅ | -| Machine Readability | 🔄 | ✅ | ❌ | 🔄 | ✅ | -| Open Source | ❌ | ❌ | ❌ | ❌ | ✅ | -| Authority to Operate | ❌ | ❌ | ✅ | ❌ | ✅ | +| Usability | 3 | 2 | 1 | 2 | 1 | +| Public Access | 🔄 | 🔄 | ✅ | ✅ | ✅ | +| Content Review | 🔄 | ❌ | ❌ | ✅ | 🔄 | +| Comments | ✅ | ✅ | ❌ | ✅ | 🔄 | +| Version History | ✅ | 🔄 | ✅ | ✅ | 🔄 | +| Multi-Media | ✅ | ✅ | ❌ | ✅ | ✅ | +| I18n | 🔄 | 🔄 | ❌ | ✅ | ✅ | +| Web Analytics | ✅ | ✅ | ❌ | ✅ | 🔄 | +| Onboarding Cost Efficiency | 2 | 2 | 3 | 2 | 1 | +| Maintenance Cost Efficiency | 2 | 2 | 3 | 2 | 1 | +| External Contributions | ✅ | ✅ | 🔄 | 🔄 | 🔄 | +| Data Access | 🔄 | 🔄 | ✅ | ✅ | ✅ | +| Machine Readability | 🔄 | ✅ | ❌ | 🔄 | ✅ | +| Open Source | ❌ | ❌ | ❌ | ❌ | ✅ | +| Authority to Operate | ❌ | ❌ | ✅ | ❌ | ✅ | ## Pros and Cons of the Options @@ -299,9 +299,9 @@ If we can't get coverage for GitBook under the existing ATO, we should pursue on #### Cons -- *Much* less intuitive than other wiki options +- _Much_ less intuitive than other wiki options - Documentation for the tool is lacking -- Requires *significant* investment of staff time for initial configuration and ongoing maintenance +- Requires _significant_ investment of staff time for initial configuration and ongoing maintenance - Features are less mature than other SaaS offerings like Confluence or GitBook ## Links @@ -326,24 +326,34 @@ If we can't get coverage for GitBook under the existing ATO, we should pursue on - [GitBook Google Analytics](gitbook-ga) [milestone]: ../milestones/individual_milestones/communication_platforms.md + + [confluence]: https://www.atlassian.com/software/confluence [confluence-pricing]: https://www.atlassian.com/software/confluence/pricing [confluence-public-spaces]: https://confluence.atlassian.com/doc/make-a-space-public-829076202.html [confluence-public-pages]: https://support.atlassian.com/confluence-cloud/docs/share-content-externally-with-public-links/ [confluence-ga]: https://marketplace.atlassian.com/apps/1216936/google-analytics-in-confluence?tab=pricing&hosting=cloud [confluence-permissions]: https://community.atlassian.com/t5/Confluence-questions/Let-users-to-edit-but-restrict-for-publishing-changes-without/qaq-p/945993 + + [notion]: https://www.notion.so [notion-pricing]: https://www.notion.so/pricing [notion-i18n]: https://store.crowdin.com/notion + + [gh-wiki]: https://docs.github.com/en/communities/documenting-your-project-with-wikis/about-wikis + + [gitbook]: https://www.gitbook.com/ [gitbook-pricing]: https://www.gitbook.com/pricing [gitbook-oss]: https://docs.gitbook.com/account-management/plans/apply-for-the-non-profit-open-source-plan#criteria-for-open-source-projects [gitbook-i18n]: https://docs.gitbook.com/publishing/share/collection-publishing [gitbook-ga]: https://docs.gitbook.com/product-tour/integrations/google-analytics/configure + + [wiki-js]: https://js.wiki/ diff --git a/documentation/decisions/adr/2023-07-11-design-diagramming-tool.md b/documentation/decisions/adr/2023-07-11-design-diagramming-tool.md index 3ee6a6772..ff8d45c08 100644 --- a/documentation/decisions/adr/2023-07-11-design-diagramming-tool.md +++ b/documentation/decisions/adr/2023-07-11-design-diagramming-tool.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-07-11 -- **Related Issue:** [#116](https://github.com/HHS/grants-equity/issues/116) +- **Related Issue:** [#116](https://github.com/HHS/simpler-grants-gov/issues/116) - **Deciders:** Andy Cochran, Emily Ianacone, Sumi Thaiveettil, Aaron Couch, Billy Daly, Lucan Brown - **Tags:** design @@ -112,7 +112,7 @@ Note: If in the use of Mural, it becomes evident that the project would benefit ## ClickUp - **Pro** - - Includes project management features, tasks, whiteboards, dashboards, chat, wiki…  + - Includes project management features, tasks, whiteboards, dashboards, chat, wiki… - **Cons** - More of a suite of products trying to compete with Atlassian, 365, etc - "One app to replace them all" requires relying on whole suite to get the most of its features diff --git a/documentation/decisions/adr/2023-07-11-ticket-tracking.md b/documentation/decisions/adr/2023-07-11-ticket-tracking.md index a6a454c50..e28bb15ee 100644 --- a/documentation/decisions/adr/2023-07-11-ticket-tracking.md +++ b/documentation/decisions/adr/2023-07-11-ticket-tracking.md @@ -2,8 +2,8 @@ - **Status:** Accepted - **Last Modified:** 2023-07-11 -- **Related Issue:** [#98](https://github.com/HHS/grants-equity/issues/98) -- **Deciders:** Lucas Brown, Esther Oke, Sumi Thaiveettil, Sarah Knopp, Aaron Couch, Billy Daly +- **Related Issue:** [#98](https://github.com/HHS/simpler-grants-gov/issues/98) +- **Deciders:** Lucas Brown, Esther Oke, Sumi Thaiveettil, Sarah Knopp, Aaron Couch, Billy Daly - **Tags:** communications, sprint planning, agile ## Context and Problem Statement @@ -80,17 +80,17 @@ We are planning to use **GitHub issues with GitHub projects** because it is the | Factor | Zenhub | GitHub Projects | Jira | OpenProject | | ------------------------- | :-----------: | :-------------: | :-----------: | :-----------: | | Cost | $8.33/user/mo | Free | $7.75/user/mo | $7.25/user/mo | -| Ticket Tracking | ✅ | ✅ | ✅ | ✅ | -| Public Access | 🔄 | ✅ | 🔄 | ❌ | -| Public Requests | ✅ | ✅ | ❌ | ❌ | -| Issue Templates | 🔄 | ✅ | ✅ | ❌ | -| Reporting | ✅ | 🔄 | ✅ | ✅ | -| Authority to Operate | 🔄 | ✅ | ✅ | ✅ | -| Level of Effort Estimates | ✅ | ✅ | ✅ | ✅ | -| Custom Views | 🔄 | ✅ | ✅ | 🔄 | -| Custom Fields | ❌ | ✅ | ✅ | 🔄 | -| Automation | 🔄 | ✅ | ✅ | ❌ | -| Open Source | ❌ | ❌ | ❌ | ✅ | +| Ticket Tracking | ✅ | ✅ | ✅ | ✅ | +| Public Access | 🔄 | ✅ | 🔄 | ❌ | +| Public Requests | ✅ | ✅ | ❌ | ❌ | +| Issue Templates | 🔄 | ✅ | ✅ | ❌ | +| Reporting | ✅ | 🔄 | ✅ | ✅ | +| Authority to Operate | 🔄 | ✅ | ✅ | ✅ | +| Level of Effort Estimates | ✅ | ✅ | ✅ | ✅ | +| Custom Views | 🔄 | ✅ | ✅ | 🔄 | +| Custom Fields | ❌ | ✅ | ✅ | 🔄 | +| Automation | 🔄 | ✅ | ✅ | ❌ | +| Open Source | ❌ | ❌ | ❌ | ✅ | ## Pros and Cons of the Options @@ -198,16 +198,22 @@ Use the open source project management tool [OpenProject](open-project) for both [github-insights]: https://docs.github.com/en/issues/planning-and-tracking-with-projects/viewing-insights-from-your-project/about-insights-for-projects [github-project-views]: https://docs.github.com/en/issues/planning-and-tracking-with-projects/customizing-views-in-your-project/changing-the-layout-of-a-view [github-project-fields]: https://docs.github.com/en/issues/planning-and-tracking-with-projects/understanding-fields/about-text-and-number-fields + + [zenhub]: https://www.zenhub.com/ [zenhub-epics]: https://help.zenhub.com/support/solutions/articles/43000500733-getting-started-with-epics [zenhub-story-points]: https://help.zenhub.com/support/solutions/articles/43000010347-estimate-work-using-story-points [zenhub-reporting]: https://www.zenhub.com/reporting + + [jira]: https://www.atlassian.com/software/jira [jira-reporting]: https://www.atlassian.com/software/jira/features/reports [jira-automation]: https://www.atlassian.com/software/jira/features/automation [jira-custom-fields]: https://support.atlassian.com/jira-cloud-administration/docs/create-a-custom-field/ [jira-public-access]: https://marketplace.atlassian.com/apps/1220441/external-share-for-jira?tab=overview&hosting=cloud + + [open-project]: https://www.openproject.org/ diff --git a/documentation/decisions/adr/2023-07-14-front-end-framework.md b/documentation/decisions/adr/2023-07-14-front-end-framework.md index a218c6080..1b42ef39f 100644 --- a/documentation/decisions/adr/2023-07-14-front-end-framework.md +++ b/documentation/decisions/adr/2023-07-14-front-end-framework.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-07-14 -- **Related Issue:** [#97](https://github.com/HHS/grants-equity/issues/97) +- **Related Issue:** [#97](https://github.com/HHS/simpler-grants-gov/issues/97) - **Deciders:** Lucas Brown, Aaron Couch, Billy Daly, Sammy Steiner, Daphne Gold, Andy Cochran, Sarah Knopp ## Context and Problem Statement @@ -12,6 +12,7 @@ The project will need a web framework to build and manage the frontend. The goal ## Decision Drivers ### Must Haves + - Active Maintenance: The web framework is actively maintained with patches and minor releases delivered on a regular basis - Community of Users: The web framework has an active community of open source users and the framework is commonly used for frontend development - Usability: The framework is relatively easy to learn for developers without prior experience in the particular framework, and there are plenty of resources and training materials available @@ -20,6 +21,7 @@ The project will need a web framework to build and manage the frontend. The goal - Client-side Rendering: The framework also supports rendering or modifying content client-side based on user interaction with the page (e.g. filtering, searching, etc.) ### Nice to Have + - AuthN/AuthZ: The framework supports Authentication & Authorization routing natively or there are established extensions that provide this functionality - Internationalization (i18n): The framework supports localized routing for different languages natively or there are established extensions that provide this functionality - Middleware: The framework supports other types of middleware (i.e. functions or scripts that execute before a routing request is complete) diff --git a/documentation/decisions/adr/2023-07-17-frontend-tooling.md b/documentation/decisions/adr/2023-07-17-frontend-tooling.md index 919d8428c..be3db1292 100644 --- a/documentation/decisions/adr/2023-07-17-frontend-tooling.md +++ b/documentation/decisions/adr/2023-07-17-frontend-tooling.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-07-17 -- **Related Issue:** [#102](https://github.com/HHS/grants-equity/issues/102) +- **Related Issue:** [#102](https://github.com/HHS/simpler-grants-gov/issues/102) - **Deciders:** Aaron Couch, Daphne Gold, Sammy Steiner, Gina Carson, Lucas Brown, Billy Daly - **Tags:** ADR @@ -27,23 +27,27 @@ Front-end code quality tools should facilitate and efficiently enforce linting, ### Dependency Management **[npm](https://www.npmjs.com/):** Package manager for Node.js. + - npm is a robust package manager that is pre-bundled with Node, simplifying installation steps - Maintained by Github/Microsoft ### Code Linting **[ESLint](https://eslint.org/):** Statically analyzes your code to quickly find problems. + - Supported by a huge variety of editors and easy to integrate into CI/CD pipeline - Very long-standing project, hugely popular, and well-supported tool ### Auto-formatting **[Prettier](https://prettier.io/):** Enforces code style and consistency while reducing the need for manual formatting or nitpicking. + - Top pick in many JavaScript repositories as a well-maintained formatting tool ### Type Checking **[TypeScript](https://www.typescriptlang.org/):** Strongly typed programming language that builds on JavaScript + - Converts to JavaScript, therefore works everywhere JavaScript is compatible - Static-type checking built into language - Identifies problems early at compile time @@ -52,13 +56,15 @@ Front-end code quality tools should facilitate and efficiently enforce linting, ### Dependency Checks **[Renovate](https://docs.renovatebot.com/):** Automated dependency updates. + - Free and open source - Can batch, schedule, auto-assign and auto merge updates - Multi-language and supports Python as well -*Note: Do we need the Safety package for our Python code as well or is this sufficient?* +_Note: Do we need the Safety package for our Python code as well or is this sufficient?_ ### License Checking[^*] + **[License Checker](https://www.npmjs.com/package/license-checker):** Very aptly named tool to check licenses for dependencies. Can fail on specified input, a semicolon separated list. ## Decision Outcome diff --git a/documentation/decisions/adr/2023-07-18-frontend-testing.md b/documentation/decisions/adr/2023-07-18-frontend-testing.md index 3f39293f8..c4f71702d 100644 --- a/documentation/decisions/adr/2023-07-18-frontend-testing.md +++ b/documentation/decisions/adr/2023-07-18-frontend-testing.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-07-18 -- **Related Issue:** [183](https://github.com/HHS/grants-equity/issues/183) +- **Related Issue:** [183](https://github.com/HHS/simpler-grants-gov/issues/183) - **Deciders:** Sammy Steiner, Lucas Brown, Billy Daly, Andy Cochran - **Tags:** ADR @@ -20,10 +20,12 @@ Front-end testing is essential in maintaining a stable and healthy codebase, cre ## Options Considered ## Unit Testing + - Jest - Mocha ### Pros and Cons of the Options + #### [Jest](https://jestjs.io/) - **Pros** @@ -50,13 +52,16 @@ Front-end testing is essential in maintaining a stable and healthy codebase, cre - Slower than Jest ## Visual, Interactive & Component Testing + - Storybook - Cypress ### Pros and Cons of the Options + #### [Storybook](https://storybook.js.org) - **Pro** + - Build reusable UI components and pages in isolation, mocking external dependencies and business logic - Visually verify changes and debug on multiple device formats easily in the interface - Stories can be imported into Jest or other testing frameworks @@ -74,6 +79,7 @@ Front-end testing is essential in maintaining a stable and healthy codebase, cre #### [Cypress](https://www.cypress.io/) - **Pro** + - Stubbing and mocking is simple comparatively - Well-documented with a long history of providing reliable end-to-end and component testing - Allows for visual debugging @@ -90,9 +96,11 @@ Front-end testing is essential in maintaining a stable and healthy codebase, cre ## Decision Outcome ### Unit Testing + **Jest**, because it is integrated into the Next.js template application, well-maintained, and lightweight. Importantly, documentation is thorough and helpful information for troubleshooting can be easily accessed. ### Visual, Interactive & Component Testing + **Storybook**, because it provides an effective methodology for developing robust front-ends quickly. It is already implemented in the Next.js template application. Integration allows multiple ways to test applications, including compatibility with Jest. In the future, if we find that Storybook doesn't meet our testing needs, we can look into integration with Cypress. However, not recommended from the start because our use-cases are covered by Storybook and there's a strong preference to not have to integrate another tool or learn another syntax. diff --git a/documentation/decisions/adr/2023-07-19-backend-api-type.md b/documentation/decisions/adr/2023-07-19-backend-api-type.md index db71bd330..e480524c3 100644 --- a/documentation/decisions/adr/2023-07-19-backend-api-type.md +++ b/documentation/decisions/adr/2023-07-19-backend-api-type.md @@ -2,7 +2,7 @@ - **Status:** Accepted - **Last Modified:** 2023-07-19 -- **Related Issue:** [#186](https://github.com/HHS/grants-equity/issues/186) +- **Related Issue:** [#186](https://github.com/HHS/simpler-grants-gov/issues/186) - **Deciders:** Lucas Brown, Aaron Couch, Billy Daly, Sammy Steiner, Daphne Gold, Andy Cochran, Sarah Knopp ## Context and Problem Statement @@ -12,11 +12,11 @@ The project will require a backend API. The goal of this ADR is to evaluate and ## Decision Drivers ### Must Haves + - Well-Established Paradigm & Ease of Adoption: The API protocol needs to be well-established so that the consumer of the API is familiar with how to structure requests and process responses. The API should be simplistic, consistent, clear and backward compatibile -- Supports Common Uses Cases: The API needs to support our common use cases (e.g. querying a list of NOFOs that match certain search criteria), so that it "just works" out of the box without having to spend much time learning how to use it +- Supports Common Uses Cases: The API needs to support our common use cases (e.g. querying a list of NOFOs that match certain search criteria), so that it "just works" out of the box without having to spend much time learning how to use it - Easily Maintained and Scalable: The API needs to be relatively easy to maintain and scale, so that we can prioritize developing important product features over managing basic infrastructure. We need a flexible protocol that can satisfy both current and future needs of the project. - ## Options Considered - REST @@ -28,7 +28,6 @@ The project will require a backend API. The goal of this ADR is to evaluate and Chosen protocol: REST, because this option is widely opted, is highly scalable and can meet the demands of a large and active user base, and is flexible. - ## Pros and Cons of the Options ### REST @@ -60,7 +59,7 @@ SOAP (Simple Object Access Protocol) is a protocol for exchanging information be ### RPC -RPC (Remote Procedure Call) is a style of programming where a client application calls a procedure on a remote server. +RPC (Remote Procedure Call) is a style of programming where a client application calls a procedure on a remote server. - **Pros** - Efficient @@ -84,7 +83,6 @@ GraphQL is a query language for APIs. It allows clients to request specific data - Can be complex to implement - Not as well-suited for complex data structures - ## Links - [REST vs. SOAP vs. GraphQL vs. RPC](https://www.altexsoft.com/blog/soap-vs-rest-vs-graphql-vs-rpc/) diff --git a/documentation/decisions/adr/2023-07-19-backend-testing.md b/documentation/decisions/adr/2023-07-19-backend-testing.md index cb642693f..ce868b7e2 100644 --- a/documentation/decisions/adr/2023-07-19-backend-testing.md +++ b/documentation/decisions/adr/2023-07-19-backend-testing.md @@ -2,7 +2,7 @@ - **Status:** Accepted - **Last Modified:** 2023-07-19 -- **Related Issue:** [174](https://github.com/HHS/grants-equity/issues/174) +- **Related Issue:** [174](https://github.com/HHS/simpler-grants-gov/issues/174) - **Deciders:** Sammy Steiner, Lucas Brown, Billy Daly, Andy Cochran, Daphne Gold - **Tags:** ADR @@ -20,15 +20,18 @@ Back-end testing is essential in maintaining a stable and healthy codebase, crea ## Options Considered ## Unit Testing + - Pytest ## Test Coverage + - Coverage ### Pros and Cons of the Options + #### [Pytest](https://docs.pytest.org/) -The pytest framework makes it easy to write small, readable tests, and can scale to support complex functional testing for applications and libraries. +The pytest framework makes it easy to write small, readable tests, and can scale to support complex functional testing for applications and libraries. - **Pros** - Lightweight, well-supported and documented testing solution @@ -40,6 +43,7 @@ The pytest framework makes it easy to write small, readable tests, and can scale - Compatibility issues with other testing frameworks means it's difficult to swap out for other frameworks #### [Coverage](https://coverage.readthedocs.io/) + Coverage.py is a tool for measuring code coverage of Python programs. It monitors your program, noting which parts of the code have been executed, then analyzes the source to identify code that could have been executed but was not. - **Pros** @@ -47,13 +51,14 @@ Coverage.py is a tool for measuring code coverage of Python programs. It monitor - **Cons** - Code coverage is only one piece of a stable and healthy testing approach - ## Decision Outcome ### Unit Testing + **Pytest**, because it is integrated into the Nava Flask template application, well-maintained, and lightweight. Importantly, documentation is thorough and helpful information for troubleshooting can be easily accessed. ### Testing Coverage + **Coverage**, because it is integrated into the Nava Flask template application, well-maintained, and lightweight. Importantly, documentation is thorough and helpful information for troubleshooting can be easily accessed. We added a code coverage threshold of %80 in `api/pyproject.toml` diff --git a/documentation/decisions/adr/2023-07-20-deployment-strategy.md b/documentation/decisions/adr/2023-07-20-deployment-strategy.md index 72c3d6cc5..61c459552 100644 --- a/documentation/decisions/adr/2023-07-20-deployment-strategy.md +++ b/documentation/decisions/adr/2023-07-20-deployment-strategy.md @@ -2,7 +2,7 @@ - **Status:** Accepted - **Last Modified:** 2023-07-20 -- **Related Issue:** [187](https://github.com/HHS/grants-equity/issues/187) +- **Related Issue:** [187](https://github.com/HHS/simpler-grants-gov/issues/187) - **Deciders:** Lucas Brown, Daphne Gold, Sammy Steiner, Billy Daly - **Tags:** ADR @@ -64,6 +64,7 @@ Secure and resizable compute capacity for virtually any workload. - Less friendly for engineering teams that are not DevOps dedicated **A note on ECS:** It is possible to run EC2 instances to host our Docker containers without using ECS orchestration. However, since ECS is a free service provided by AWS and we would only pay for the underlying resources, forgoing ECS and an orchestration tool isn't an appealing strategy. + ### S3 Object storage built to retrieve any amount of data from anywhere. diff --git a/documentation/decisions/adr/2023-07-24-video-conferencing.md b/documentation/decisions/adr/2023-07-24-video-conferencing.md index eb5a0bb51..90f5b82d8 100644 --- a/documentation/decisions/adr/2023-07-24-video-conferencing.md +++ b/documentation/decisions/adr/2023-07-24-video-conferencing.md @@ -2,11 +2,11 @@ - **Status:** Accepted - **Last Modified:** 2023-07-24 -- **Related Issue:** [#99](https://github.com/HHS/grants-equity/issues/99) +- **Related Issue:** [#99](https://github.com/HHS/simpler-grants-gov/issues/99) - **Deciders:** Lucas Brown, Billy Daly, Sarah Knopp, Sumi Thaiveettil - **Tags:** communucations, open source, video conferencing -## Context and Problem Statement +## Context and Problem Statement The project aims to implement a reliable video conference platform to facilitate seamless communication for both internal collaborations involving HHS and contractors, as well as external engagements with members of the public. The primary objective of this ADR is to evaluate and ultimately choose a suitable video conference tool that aligns with the project's requirements. The selected platform should enable efficient virtual meetings, ensuring clear and effective communication among project stakeholders, and accommodating diverse use cases, from internal team discussions to public outreach and engagement. @@ -15,35 +15,34 @@ The project aims to implement a reliable video conference platform to facilitate #### Must Have - **Public Access**: If they have the right link, members of the public can join a video call without creating an account -Waiting Room: Meeting organizers can configure their meetings to require that attendees must be admitted before they can join the call -- **Video Recording**: Meeting organizers can record a video call from within the platform -- **Screen Sharing**: Attendees can share their screen (if given the appropriate permissions by meeting organizer) -- **Chat**: Users can post comments and questions in a chat that are visible to other attendees -- **Phone Support**: Users can join by phone if they don't have access to a computer for video -- **Live Transcription**: The platform supports live transcription for attendees that may need closed captioning -- **Authority to Operate**: The platform should be covered under the existing ATO for Grants.gov + Waiting Room: Meeting organizers can configure their meetings to require that attendees must be admitted before they can join the call +- **Video Recording**: Meeting organizers can record a video call from within the platform +- **Screen Sharing**: Attendees can share their screen (if given the appropriate permissions by meeting organizer) +- **Chat**: Users can post comments and questions in a chat that are visible to other attendees +- **Phone Support**: Users can join by phone if they don't have access to a computer for video +- **Live Transcription**: The platform supports live transcription for attendees that may need closed captioning +- **Authority to Operate**: The platform should be covered under the existing ATO for Grants.gov #### Nice to Have -- **Webinar**: The platform supports a webinar format, i.e. attendees who can join and post questions but not see one another or unmute without permission -- **Breakout Rooms**: A meeting organizer can split users out into virtual "breakout rooms" for small-group discussions -- **Open Source**: The code to run this platform is open source and offers a self-hosting option +- **Webinar**: The platform supports a webinar format, i.e. attendees who can join and post questions but not see one another or unmute without permission +- **Breakout Rooms**: A meeting organizer can split users out into virtual "breakout rooms" for small-group discussions +- **Open Source**: The code to run this platform is open source and offers a self-hosting option - **Attendance Tracking**: The platform allows host to access attendees to make follow up and attendance tracking easier - **Community & Support**: The platform has a strong community for ongoing support, updates, and bug fixes - **Scalability**: The platform should be able to hadndle a growing number of participants and meetings wihtout performance issues - ## Options Considered - [Zoom](https://zoom.us/) -- [Microsoft Teams](https://www.microsoft.com/en-us/microsoft-teams/group-chat-software) -- [Google Meet](https://meet.google.com/) +- [Microsoft Teams](https://www.microsoft.com/en-us/microsoft-teams/group-chat-software) +- [Google Meet](https://meet.google.com/) - [Jitsu](https://meet.jit.si/) - [meet.coop](https://www.meet.coop/) ## Decision Outcome -Zoom stands out as the optimal choice for our video conference tool. It fulfills all the key decision drivers we have outlined, including public access, waiting room feature, video recording capability, screen sharing, and interactive chat. Moreover, Zoom provides phone support, live transcription for closed captioning, and is FedRAMP approved. Its robust features and ease of use make it a reliable platform for both internal and external meetings, ensuring a seamless and inclusive communication experience for all stakeholders involved. +Zoom stands out as the optimal choice for our video conference tool. It fulfills all the key decision drivers we have outlined, including public access, waiting room feature, video recording capability, screen sharing, and interactive chat. Moreover, Zoom provides phone support, live transcription for closed captioning, and is FedRAMP approved. Its robust features and ease of use make it a reliable platform for both internal and external meetings, ensuring a seamless and inclusive communication experience for all stakeholders involved. ### Positive Consequences @@ -74,50 +73,50 @@ Jitsi serves as a strong backup option for our video conferencing needs. Jitsi a - 1-3 Strength level - ❓Unknown -| Factor | Zoom | Microsoft Teams | Google Meet | Jitsu | Meet.coop | -| --------------------------- | :--------: | :--------: | :---------: | :-----: | :-----: | -| Public Access | ✅ | ✅ | ✅ | ✅ | ✅ | -| Waiting Room | ✅ | ✅ | ✅ | ✅ | ❓ | -| Video Recording | ✅ | ✅ | ✅ | ✅ | ✅ | -| Screen Sharing | ✅ | ✅ | ✅ | ✅ | ✅ | -| Chat | ✅ | ✅ | ✅ | ✅ | ✅ | -| Phone Support | ✅ | ✅ | ✅ | ✅ | ✅ | -| Live Transcription | ✅ | ✅ | ✅ | ❌ | ❓ | -| Authority to Operate | ❓ | ✅ | ❓ | ❓ | ❓ | -| Webinar* | ✅ | ✅ | 3 | 🔄 | ❓ | -| Breakout Rooms* | ✅ | ✅ | ✅ | 🔄 | ✅ | -| Open Source* | ❌ | ❌ | ❌ | ✅ | ✅ | -| Attendance Tracking* | ✅ | ✅ | 🔄 | ❓ | ❓ | -| Community & Support* | 3 | 3 | 3 | 3 | 2 | -| Scalability* | ✅ | ✅ | ✅ | ✅ | 🔄 | - - - *Nice to have +| Factor | Zoom | Microsoft Teams | Google Meet | Jitsu | Meet.coop | +| --------------------- | :--: | :-------------: | :---------: | :---: | :-------: | +| Public Access | ✅ | ✅ | ✅ | ✅ | ✅ | +| Waiting Room | ✅ | ✅ | ✅ | ✅ | ❓ | +| Video Recording | ✅ | ✅ | ✅ | ✅ | ✅ | +| Screen Sharing | ✅ | ✅ | ✅ | ✅ | ✅ | +| Chat | ✅ | ✅ | ✅ | ✅ | ✅ | +| Phone Support | ✅ | ✅ | ✅ | ✅ | ✅ | +| Live Transcription | ✅ | ✅ | ✅ | ❌ | ❓ | +| Authority to Operate | ❓ | ✅ | ❓ | ❓ | ❓ | +| Webinar\* | ✅ | ✅ | 3 | 🔄 | ❓ | +| Breakout Rooms\* | ✅ | ✅ | ✅ | 🔄 | ✅ | +| Open Source\* | ❌ | ❌ | ❌ | ✅ | ✅ | +| Attendance Tracking\* | ✅ | ✅ | 🔄 | ❓ | ❓ | +| Community & Support\* | 3 | 3 | 3 | 3 | 2 | +| Scalability\* | ✅ | ✅ | ✅ | ✅ | 🔄 | + +\*Nice to have ## Pros and cons of each option ### Zoom -Zoom is a widely used video conferencing platform known for its ease of use and comprehensive features. It offers virtual meetings, webinars, breakout rooms, screen sharing, chat functionality, and phone support. +Zoom is a widely used video conferencing platform known for its ease of use and comprehensive features. It offers virtual meetings, webinars, breakout rooms, screen sharing, chat functionality, and phone support. #### Additional details and pricing -**Pricing**: +**Pricing**: - Free with limitations like 40 minutes per meeting, 100 attendees per meeting, whiteboard basic, team chat, mail & calendar - Pricing starts at $149.90/year/user and goes up from there. -- The Enterprise plan offers rooms and webinars but no pricing is available on the site. We would need to contact Zoom for specific pricing for our project. +- The Enterprise plan offers rooms and webinars but no pricing is available on the site. We would need to contact Zoom for specific pricing for our project. - We do not need each every user to have access to our paid instance since anyone can join a Zoom session with the invite link. -- We would need around 15-30 users with access to the paid instance. +- We would need around 15-30 users with access to the paid instance. #### Pros + - User-friendly interface and easy to set up for both organizers and participants. - Robust features like breakout rooms, screen sharing, and virtual backgrounds enhance collaboration. - Offers a wide range of integrations with other apps and platforms. - Availability of a free plan with limited meeting duration. - #### Cons + - Security concerns in the past, but the platform has made significant improvements. - Free plan has limitations on meeting duration and participant count. - Frequent updates may require users to adapt to changes. @@ -128,11 +127,11 @@ Microsoft Teams is a collaboration platform integrated with Microsoft 365. It of #### Additional details and pricing -**Pricing**: +**Pricing**: - Prices starting at $4 user / month - Webinar hosting is only available in the Business Standard package which is $12.50/user / month - + #### Pros - Part of the Microsoft 365 suite, providing seamless integration with Office apps. @@ -147,12 +146,11 @@ Microsoft Teams is a collaboration platform integrated with Microsoft 365. It of - Resource-intensive, leading to occasional performance issues on lower-end devices. - Limited to Microsoft 365 users, which may restrict external collaboration. - Frequent updates can lead to occasional disruptions. -- Potentially paying a premium for the Microsoft 365 suite when the video conferencing is all that is needed for the project. - +- Potentially paying a premium for the Microsoft 365 suite when the video conferencing is all that is needed for the project. ### Google Meet -Google Meet is part of Google Workspace (formerly G Suite) and is well-suited for Google users. It provides straightforward video conferencing with high-quality audio and video. While it may lack some advanced features, it offers a user-friendly experience for those already using Google's tools. +Google Meet is part of Google Workspace (formerly G Suite) and is well-suited for Google users. It provides straightforward video conferencing with high-quality audio and video. While it may lack some advanced features, it offers a user-friendly experience for those already using Google's tools. #### Additional details and pricing @@ -160,10 +158,9 @@ Google Meet is part of Google Workspace (formerly G Suite) and is well-suited fo - Google Workspace pricing is for the whole suite, starting at $6 per user/ month. The Enterprise has more advanced options and features. - We do not need each every user to have access to our paid instance since anyone can join a Google Meet session with the invite link. -- We would need around 15-30 users with access to the paid instance. +- We would need around 15-30 users with access to the paid instance. - **Live Transcription**: Yes but in English only - #### Pros - Seamless integration with Google Workspace (formerly G Suite) apps for streamlined collaboration. @@ -171,26 +168,26 @@ Google Meet is part of Google Workspace (formerly G Suite) and is well-suited fo - No additional software installation required for users with Google accounts. Users can access simply through a browser. - Good performance on various devices, including smartphones and tablets. - Provides live captions for improved accessibility. - + #### Cons - Advanced features are limited compared to some other platforms. - Some features may require a paid G Suite subscription. - Limited customization options for meeting settings. - Live transcription is in English only. -- Potentially paying a premium for the suite of Google products when the video conferencing is all that is needed for the project. +- Potentially paying a premium for the suite of Google products when the video conferencing is all that is needed for the project. ### Jitsu -Jitsi is an open-source video conferencing solution that stands out for its simplicity and self-hosting capabilities. It supports public access, open meetings, and offers easy setup. +Jitsi is an open-source video conferencing solution that stands out for its simplicity and self-hosting capabilities. It supports public access, open meetings, and offers easy setup. #### Additional details and pricing -- **Pricing**: Free +- **Pricing**: Free - **Webinar**: Not a built-in feature (third-party integrations available) - **Breakout Rooms**: Not a built-in feature (third-party integrations available) - **Open Source**: Yes -- **Attendance Tracking**: Unknown if this exists. The team could potentially contribute and build this since Jitsu is open source. +- **Attendance Tracking**: Unknown if this exists. The team could potentially contribute and build this since Jitsu is open source. #### Pros @@ -213,22 +210,22 @@ Meet.coop is a European based solution that provides online meeting and conferen #### Additional details and pricing -**Pricing**: -- Prices starting at $12 / month for 10 participants and goes up to $115 / monthe for more users. +**Pricing**: + +- Prices starting at $12 / month for 10 participants and goes up to $115 / monthe for more users. #### Pros -- Prides themselves as an ethical, sustainable, and community-driven solution which aligns with Grants Equity values + +- Prides themselves as an ethical, sustainable, and community-driven solution which aligns with Simpler Grants values - Data ownership is with the users - Fosters a strong sense of community engagement and collaboration amongst its users, providing a platform for shared learning and support - #### Cons + - Users may not be as familiar with the Meet.coop and how to use the tool, however the tool does seem user-friendly - Features and capabilities are not as mature as the alternatives - Meet.coop may lack immediate and direct support options that come with commercial platforms -- There may be some risks in scalability to accommodate a larger number of users and meetings. - - +- There may be some risks in scalability to accommodate a larger number of users and meetings. ## Links diff --git a/documentation/decisions/adr/2023-07-26-backend-prod-server.md b/documentation/decisions/adr/2023-07-26-backend-prod-server.md index 98b920228..fa23ac5b2 100644 --- a/documentation/decisions/adr/2023-07-26-backend-prod-server.md +++ b/documentation/decisions/adr/2023-07-26-backend-prod-server.md @@ -2,7 +2,7 @@ - **Status:** Accepted - **Last Modified:** 2023-07-2i -- **Related Issue:** [#245](https://github.com/HHS/grants-equity/issues/245) +- **Related Issue:** [#245](https://github.com/HHS/simpler-grants-gov/issues/245) - **Deciders:** Daphne Gold, Sammy Steiner, Billy Daly, Lucas Brown - **Tags:** ADR @@ -11,6 +11,7 @@ The Flask development server is not meant for production use and only intended for local development. It is not secure, stable, efficient, or scaled for a production environment. In addition to choosing a production server, this ADR will specify a high level implementation option. ## Decision Drivers + - **Scalable:** The chosen solution should be configurable to scale and a multi-worker, multi-threaded production-ready, WSGI wrapper. - **Ease of use:** The production server should be relatively simple to set up and start. - **Well-maintained:** We have a preference towards a production server that is widely adopted and have active maintainers. @@ -18,10 +19,12 @@ The Flask development server is not meant for production use and only intended f ## Options Considered ### Production Server + - Gunicorn - Waitress ### Implementation + 1. API entrypoint responsible for conditional logic determining dev vs prod environment and starting corresponding server 2. Dockerfile executable command for the prod server is overridden in the IaC [task definition](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html), API by default starts dev server 3. Dockerfile executable command for the dev server is overridden in `docker-compose.yml`, API by default starts prod server @@ -41,6 +44,7 @@ Chosen option: #3 Dockerfile executable command for the dev server is overridden ## Pros and Cons of the Options ### Production Server + #### [Gunicorn](https://gunicorn.org/) - **Pros** @@ -62,6 +66,7 @@ Chosen option: #3 Dockerfile executable command for the dev server is overridden - Runs on CPython and has "very acceptable performance" ### Implementation + #### #1 API entrypoint responsible for conditional logic determining dev vs prod environment and starting corresponding server - **Pros** diff --git a/documentation/decisions/adr/2023-08-01-analytics-platform.md b/documentation/decisions/adr/2023-08-01-analytics-platform.md index d3ced905b..0403ebc5e 100644 --- a/documentation/decisions/adr/2023-08-01-analytics-platform.md +++ b/documentation/decisions/adr/2023-08-01-analytics-platform.md @@ -2,7 +2,7 @@ - **Status:** Accepted - **Last Modified:** 2023-08-01 -- **Related Issue:** [#323](https://github.com/HHS/grants-equity/issues/323) +- **Related Issue:** [#323](https://github.com/HHS/simpler-grants-gov/issues/323) - **Deciders:** Lucas Brown, Aaron Couch, Billy Daly, Sarah Knopp, Sumi Thaiveettil - **Tags:** communucations, open source, analytics @@ -16,7 +16,7 @@ The [communications platform milestone](milestone) identifies a series of platfo - **Data tracking capabilities**: solution should be able to track the essential metrics and events relevant to the project's goals, such as page views, user interactions, and other custom events. - **Data visualization and reporting**: The tool should offer clear and comprehensive data visualization and reporting features to present data in a way that is easy to understand and interpret for multiple audiences (public, internal HHS, etc.) -- **Integration with existing systems**: consider whether the analytics tool can seamlessly integrate with the project's existing infrastructure, and other tools used in the development process. We will have a content management system in the future and we should have forward thinking to ensure it could be compatible with various CMS options. +- **Integration with existing systems**: consider whether the analytics tool can seamlessly integrate with the project's existing infrastructure, and other tools used in the development process. We will have a content management system in the future and we should have forward thinking to ensure it could be compatible with various CMS options. - **Real-time data processing**: Assess whether the analytics tool can provide real-time data processing capabilities, enabling timely responses to critical events. - **Data privacy and security**: Ensure that the selected tool complies with data privacy regulations and provides robust security measures to protect sensitive information. - **Scalability**: Consider whether the analytics tool can handle the expected growth in data volume and user traffic as the project expands. @@ -37,18 +37,16 @@ The [communications platform milestone](milestone) identifies a series of platfo - [Adobe Analytics](https://business.adobe.com/products/analytics/adobe-analytics.html) - [Matomo](https://matomo.org/) - ## Decision Outcome -We recommend moving forward with analytics.usa.gov through the Digital Analytics Program for the public facing analytics. It is required for all public-facing government agency websites. The platform aligns well with our goals due to its robust data tracking capabilities, allowing us to monitor essential metrics and custom events critical to our project's success. Its comprehensive data visualization and reporting features ensure that data can be presented in an easily understandable format for various audiences, including the general public and internal stakeholders at HHS. Since it is run by the Digital Analytics Program, we have greater confidence in the data and security standards. It is free for government agencies. Additionally, it allows us to align with other government agencies and ensure transparency to public. - -DAP cannot be used for authenticated pages. We recommend Google Analytics with any logged in or authenticated pages. Since DAP is powered by Google Analytics, it makes sense to have the same Analytics platform on those pages as well. An assumption is that we will be able to connect the user sessions between authenticated and the public site together. However, if it is not possible to stitch the user journey (unauthenticated to authenticated and back and forth) together, it is worth revisiting the analytics tool selection. +We recommend moving forward with analytics.usa.gov through the Digital Analytics Program for the public facing analytics. It is required for all public-facing government agency websites. The platform aligns well with our goals due to its robust data tracking capabilities, allowing us to monitor essential metrics and custom events critical to our project's success. Its comprehensive data visualization and reporting features ensure that data can be presented in an easily understandable format for various audiences, including the general public and internal stakeholders at HHS. Since it is run by the Digital Analytics Program, we have greater confidence in the data and security standards. It is free for government agencies. Additionally, it allows us to align with other government agencies and ensure transparency to public. +DAP cannot be used for authenticated pages. We recommend Google Analytics with any logged in or authenticated pages. Since DAP is powered by Google Analytics, it makes sense to have the same Analytics platform on those pages as well. An assumption is that we will be able to connect the user sessions between authenticated and the public site together. However, if it is not possible to stitch the user journey (unauthenticated to authenticated and back and forth) together, it is worth revisiting the analytics tool selection. ### Positive Consequences -- **Data-Driven Decision Making**: With an analytics platform, our project can gather valuable data and insights about usage and identify where there are shortfalls to our product. It can allow us to ensure we are building an equitable solution for the public. This data-driven approach enables informed decision-making and allows teams to identify trends, opportunities, and areas for improvement. -- **Improved Performance**: Analytics platforms help track key performance indicators (KPIs) and measure the success of various initiatives and milestones. By monitoring these metrics, we can optimize our strategies and improve overall performance. +- **Data-Driven Decision Making**: With an analytics platform, our project can gather valuable data and insights about usage and identify where there are shortfalls to our product. It can allow us to ensure we are building an equitable solution for the public. This data-driven approach enables informed decision-making and allows teams to identify trends, opportunities, and areas for improvement. +- **Improved Performance**: Analytics platforms help track key performance indicators (KPIs) and measure the success of various initiatives and milestones. By monitoring these metrics, we can optimize our strategies and improve overall performance. - **Enhanced User Experience**: Understanding user behavior through analytics helps tailor products, services, and content to meet users' needs and preferences leading to a better user experience. ### Negative Consequences @@ -59,7 +57,6 @@ DAP cannot be used for authenticated pages. We recommend Google Analytics with a - **Cost and Resource Allocation**: Implementing and maintaining an analytics platform can be costly and resource-intensive that goes beyond just the cost of the tool. - **Learning Curve**: Adopting new analytics platforms may require training and time for team members to become proficient, potentially affecting productivity during the initial stages. - ## Comparison Matrix - ✅ Feature available, meets requirement @@ -70,20 +67,20 @@ DAP cannot be used for authenticated pages. We recommend Google Analytics with a | Factor | Analytics.usa.gov | Google Analytics | Mixpanel | Adobe Analytics | Matomo | | --------------------------------- | :---------------: | :--------------: | :------: | :-------------: | :----: | -| Data tracking capabilities | ✅ | 3 | 3 | 3 | 3 | -| Data visualization and reporting | 1 | 3 | 2 | 3 | 1 | -| Integration with existing systems | ❓ | 3 | 2 | 1 | 2 | -| Real-time data processing | ✅ | 🔄 | ✅ | 🔄 | 🔄 | -| Data privacy and security | 3 | 3 | 3 | 3 | 4 | -| Scalability | 2 | 4 | 3 | 3 | 3 | -| Cost | Free (gov use)| Free + Premium | $ | $$ | Free | -| Customization and flexibility | 1 | 4 | 3 | 3 | 4 | -| Support and documentation | 2 | 4 | 3 | 4 | 3 | -| User-friendly interface | ✅ | ✅ | ✅ | ✅ | 🔄 | -| Authority to Operate | ✅ | ❓ | ❓ | ❓ | ❓ | -| Open Source* | ❌ | ❌ | ❌ | ❌ | ✅ | - - *Nice to have +| Data tracking capabilities | ✅ | 3 | 3 | 3 | 3 | +| Data visualization and reporting | 1 | 3 | 2 | 3 | 1 | +| Integration with existing systems | ❓ | 3 | 2 | 1 | 2 | +| Real-time data processing | ✅ | 🔄 | ✅ | 🔄 | 🔄 | +| Data privacy and security | 3 | 3 | 3 | 3 | 4 | +| Scalability | 2 | 4 | 3 | 3 | 3 | +| Cost | Free (gov use) | Free + Premium | $ | $$ | Free | +| Customization and flexibility | 1 | 4 | 3 | 3 | 4 | +| Support and documentation | 2 | 4 | 3 | 4 | 3 | +| User-friendly interface | ✅ | ✅ | ✅ | ✅ | 🔄 | +| Authority to Operate | ✅ | ❓ | ❓ | ❓ | ❓ | +| Open Source\* | ❌ | ❌ | ❌ | ❌ | ✅ | + +\*Nice to have ## Pros and Cons of the Options @@ -107,7 +104,7 @@ DAP provides federal agencies with: - DAP is required: On November 8, 2016, the Office of Management and Budget (OMB) released a memorandum on [Policies for Federal Agency Public Websites and Digital Services](https://www.whitehouse.gov/wp-content/uploads/legacy_drupal_files/omb/memoranda/2017/m-17-06.pdf) (PDF, 1.2 MB, 18 pages), which requires executive branch federal agencies to implement the DAP JavaScript code on all public facing federal websites. - Details on the code are available at the [DAP Github Repo](https://github.com/digital-analytics-program/gov-wide-code). Under the Code Capabilities Summary there are details on the types of data that are collected. - The DAP script should only be applied to public-facing pages. Public-facing web pages are defined as those that can be accessed without any authentication or login, and are not part of an otherwise “privileged session.” -- The DAP script tag should not be placed on pages visited during logged-in sessions. Notably, other seemingly “public” pages that can be accessed without authentication may also be part of privileged sessions; for example, a password reset page that is accessed by clicking a link in an email is not appropriate for DAP code because it assumes the visitor has the privilege of control over the email account used to provide the link. +- The DAP script tag should not be placed on pages visited during logged-in sessions. Notably, other seemingly “public” pages that can be accessed without authentication may also be part of privileged sessions; for example, a password reset page that is accessed by clicking a link in an email is not appropriate for DAP code because it assumes the visitor has the privilege of control over the email account used to provide the link. #### Pros @@ -119,6 +116,7 @@ DAP provides federal agencies with: - The insights derived from Analytics.usa.gov can contribute to the optimization of government websites and services especially by our users and community as they will have a direct view, resulting in a more efficient and effective delivery of information and services to the public. #### Cons + - DAP can only be on public facing systems, no logged in states should have DAP ### Google Analytics @@ -140,7 +138,7 @@ Google Analytics is a widely used web and app analytics platform that provides i ### Mixpanel -Mixpanel is a user-centric analytics tool primarily focused on app analytics. It excels in tracking specific events and user flows, providing valuable insights into user engagement. Its funnel analysis helps pinpoint where users drop off in processes. While it's strong for app analytics, its web tracking capabilities might be less comprehensive. +Mixpanel is a user-centric analytics tool primarily focused on app analytics. It excels in tracking specific events and user flows, providing valuable insights into user engagement. Its funnel analysis helps pinpoint where users drop off in processes. While it's strong for app analytics, its web tracking capabilities might be less comprehensive. #### Pros @@ -156,12 +154,10 @@ Mixpanel is a user-centric analytics tool primarily focused on app analytics. It - Mixpanel's pricing can be higher compared to some other analytics tools, particularly as usage scales. - Will need to get ATO or FedRAMP approval - ### Adobe Analytics Adobe Analytics is an enterprise-grade solution suitable for large organizations. It integrates well with other Adobe products and offers extensive customization options, allowing for tailor-made reports and dashboards. - #### Pros - Adobe Analytics is a powerful enterprise-grade solution suitable for large organizations with complex analytics needs. @@ -169,7 +165,6 @@ Adobe Analytics is an enterprise-grade solution suitable for large organizations - Adobe Analytics allows extensive customization and flexibility in creating reports, segments, and dashboards. - Real-time data reporting is available, allowing for immediate insights into user behavior. - #### Cons - Adobe Analytics can be complex to set up and manage, requiring expertise and dedicated resources. @@ -177,11 +172,9 @@ Adobe Analytics is an enterprise-grade solution suitable for large organizations - Due to its advanced capabilities, Adobe Analytics might have a steeper learning curve for new users and the general public. - Will need to get ATO or FedRAMP approval - ### Matomo -Matomo, an open-source alternative, offers data ownership and control, making it attractive for privacy-conscious organizations. As self-hosted software, it can be customized and audited, addressing data privacy concerns. - +Matomo, an open-source alternative, offers data ownership and control, making it attractive for privacy-conscious organizations. As self-hosted software, it can be customized and audited, addressing data privacy concerns. #### Pros @@ -196,8 +189,6 @@ Matomo, an open-source alternative, offers data ownership and control, making it - The support ecosystem might not be as extensive as that of larger, commercial analytics platforms. - Will need to get ATO or FedRAMP approval - - ## Links - [Analytics.usa.gov](https://analytics.usa.gov/) diff --git a/documentation/decisions/adr/2023-08-21-branch-conv-release-workflow.md b/documentation/decisions/adr/2023-08-21-branch-conv-release-workflow.md index ca7e231e3..084c7b7f0 100644 --- a/documentation/decisions/adr/2023-08-21-branch-conv-release-workflow.md +++ b/documentation/decisions/adr/2023-08-21-branch-conv-release-workflow.md @@ -2,21 +2,21 @@ - **Status:** Accepted. - **Last Modified:** 2023-08-21 -- **Related Issue:** [#185](https://github.com/HHS/grants-equity/issues/185) +- **Related Issue:** [#185](https://github.com/HHS/simpler-grants-gov/issues/185) - **Deciders:** Daphne Gold, Sammy Steiner, Billy Daly, Lucas Brown - **Tags:** process, workflow, change management ## Context and Problem Statement -This project needs standards for describing changes and introducing them into lower and production environments. +This project needs standards for describing changes and introducing them into lower and production environments. The items that encompass this are: -* Git commit conventions -* Branch naming conventions -* Branch merge strategy -* Branching model -* Release workflow and naming convention +- Git commit conventions +- Branch naming conventions +- Branch merge strategy +- Branching model +- Release workflow and naming convention ## Decision Drivers @@ -31,12 +31,11 @@ The standards should be: - make it easy to revert features - facilitate both internal and external contributions - ## Options Considered ### Branch merge strategy -#### [squash and merge](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges#squash-and-merge-your-commits) +#### [squash and merge](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges#squash-and-merge-your-commits) - **Pros** - A single commit for a PR makes it easier to see all changes introduced for an entire feature @@ -111,7 +110,7 @@ This project will use `[github-username]/issue-[issue-number]-[feature-name]` co - **Pros** - Widely adopted in general and preferred by the supporting engineering organization - - Facilitates continuos integration + - Facilitates continuos integration - Facilitates continuous delivery - Facilitates lean experiments - Simpler and more efficient than some other models @@ -126,11 +125,11 @@ This project will use `[github-username]/issue-[issue-number]-[feature-name]` co The following conventions will be adopted: -- Pull Requests (PRs) will be merged directly into `main`. +- Pull Requests (PRs) will be merged directly into `main`. - PRs will be titled `[Issue N] Short description` - PRs with no issue should use `[Fix] Short description` - PRs will follow, with small changes, the [Code Change Lifecycle / Contributing -](https://docs.google.com/document/d/1EyLYuKCv8xjpY26zR8cODl6SEXy9Mx_yAuZ6vS8cPp8/edit?skip_itp2_check=true&pli=1) guidelines and be documented in `CONTRIBUTING.md` + ](https://docs.google.com/document/d/1EyLYuKCv8xjpY26zR8cODl6SEXy9Mx_yAuZ6vS8cPp8/edit?skip_itp2_check=true&pli=1) guidelines and be documented in `CONTRIBUTING.md` - Code reviews will follow, with small changes, the [Code Review Guidelines](https://docs.google.com/document/d/1pRtpg1ffLXcJn_yV_g90t1TlZjs7TLH2FfpS8DwW3_w/edit#heading=h.htn78a1hqoq) ### Release Workflow @@ -147,5 +146,3 @@ This project will use: - git commit conventions will not be enforced individual PR commits - "squash and merge" stratey for merging PRs with a defined naming convention - contribution and development practices will be documented in `CONTRIBUTING.md`, `READM.md`, and other documents in the repository - - diff --git a/documentation/decisions/adr/2023-08-21-cloud-platform.md b/documentation/decisions/adr/2023-08-21-cloud-platform.md index 87d91a89a..33d364c33 100644 --- a/documentation/decisions/adr/2023-08-21-cloud-platform.md +++ b/documentation/decisions/adr/2023-08-21-cloud-platform.md @@ -13,24 +13,25 @@ The project needs a hosting provider in order to operate. The hosting provider s ## Decision Drivers - **Past Performance:** The provider should have a proven track record of providing services for HHS. -- **Security:** The provider should be [Fedramp Authorizedi](https://marketplace.fedramp.gov/products) as a Platform as a Service Provider. +- **Security:** The provider should be [Fedramp Authorizedi](https://marketplace.fedramp.gov/products) as a Platform as a Service Provider. - **Tools**: The service provider should offer a competitive suite of tools that can be used to host the project. ## Options Considered -- Amazon Web Services -- Gov Cloud -- Google Cloud Platform +- Amazon Web Services +- Gov Cloud +- Google Cloud Platform ## Decision Outcome HHS has selected Amazon Web Services to provide hosting services for the project due to: -* HHS' existing relationship with AWS, -* the existing grants.gov infrastructure is on AWS, -* migrating data and systems is more diffictult between multiple service providers, -* AWS is Fedramp approved, -* AWS offers a competitive set of tools, and -* the current engineering team and supporting organization have years of experience on AWS. + +- HHS' existing relationship with AWS, +- the existing grants.gov infrastructure is on AWS, +- migrating data and systems is more diffictult between multiple service providers, +- AWS is Fedramp approved, +- AWS offers a competitive set of tools, and +- the current engineering team and supporting organization have years of experience on AWS. The cumulative cost and risk associated with moving away from AWS and the fact that the other service providers do not offer markedly superior features or service models meant that a feature by feature comparison was not necessary for this decision. @@ -39,7 +40,7 @@ The cumulative cost and risk associated with moving away from AWS and the fact t - AWS is well documented and supported, and is an industry standard, which will help the development team to perform efficiently. - There are a large number of developers that are familiar with AWS, which will make it easier to get support and bring on more team member in the future. - Migrating data is easier to configure, manage, secure, and is less costly than between multiple service providers. -- Grants Equity team and existing Grants.gov teams will use the same cloud service provider. +- Simpler Grants team and existing Grants.gov teams will use the same cloud service provider. ### Negative Consequences diff --git a/documentation/decisions/adr/2023-09-07-data-replication-tool.md b/documentation/decisions/adr/2023-09-07-data-replication-tool.md index ddb23e3b6..5036269e3 100644 --- a/documentation/decisions/adr/2023-09-07-data-replication-tool.md +++ b/documentation/decisions/adr/2023-09-07-data-replication-tool.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-09-21 -- **Related Issue:** [#322](https://github.com/HHS/grants-equity/issues/322) +- **Related Issue:** [#322](https://github.com/HHS/simpler-grants-gov/issues/322) - **Deciders:** Lucas Brown, Billy Daly, Sammy Steiner, Daphne Gold, Aaron Couch, Curtis Mayer, Lorenzo Gomez, Marwan Abu-Fadel, Brandon Smith - **Tags:** Hosting, Infrastructure, Database @@ -72,9 +72,11 @@ Chosen option: Use AWS VPC Peering, because it is the most secure option for per In support of this decision, MicroHealth and Nava will need to work together to limit the traffic between VPCs to only the necessary services, over the necessary ports, using only the necessary protocols. This will need to be configured with security groups in both the MicroHealth and Nava AWS accounts. ### Positive Consequences + - If we require more services within the VPCs to talk with each other, we will already have a tool configured for that ### Negative Consequences + - This tool assumes MicroHealth and Nava will put security controls in place to limit the permitted traffic to only what's necessary, which will take some coordination between MicroHealth and Nava ## Security Implications @@ -106,6 +108,7 @@ VPC Peering must be configured before DMS can complete, however in order to limi #### VPC Peering ##### Nava + - Confirm there are no overlapping IPv4 or IPv6 CIDR blocks - if there are overlapping CIDR blocks create a new VPC with non overlapping CIDR blocks and migrate resources - Info to share with MicroHealth @@ -116,8 +119,8 @@ VPC Peering must be configured before DMS can complete, however in order to limi - [Update your security groups to reference peer security groups](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-security-groups.html) - - [Update route tables for peering connection to the db subnet](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-routing.html) or to a [specific IP address](https://docs.aws.amazon.com/vpc/latest/peering/peering-configurations-partial-access.html) - ##### MicroHealth + - Confirm there are no overlapping IPv4 or IPv6 CIDR blocks - Share information with Nava: - Region information for the VPC @@ -129,10 +132,10 @@ VPC Peering must be configured before DMS can complete, however in order to limi - [Update route tables for peering connection to the db subnet](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-routing.html) - [Update route tables for peering connection to the db subnet](https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-routing.html) or to a [specific IP address](https://docs.aws.amazon.com/vpc/latest/peering/peering-configurations-partial-access.html) - #### AWS DMS Service ##### Nava + - Create a user with AWS Identity and Access Management (IAM) credentials that allows you to launch Amazon RDS and AWS Database Migration Service (AWS DMS) instances in your AWS Region. - Size your target PostgreSQL database host based on the current db host load profile. - Create the schemas in the target database @@ -155,6 +158,7 @@ VPC Peering must be configured before DMS can complete, however in order to limi - [Create and Run Your AWS DMS Migration Task](https://docs.aws.amazon.com/dms/latest/sbs/chap-rdsoracle2postgresql.steps.createmigrationtask.html) ##### MicroHealth + - Communicate the load profile of the current source Oracle database host. Consider CPU, memory, and IOPS. - ensure that ARCHIVELOG MODE is on to provide information to LogMiner. AWS DMS uses LogMiner to read information from the archive logs so that AWS DMS can capture changes. - Retaining archive logs for 24 hours is usually sufficient @@ -296,7 +300,7 @@ Configure AWS VPC Peering on both the Nava and MicroHealth AWS VPCs to allow tra ### AWS PrivateLink -AWS PrivateLink provides private connectivity between virtual private clouds (VPCs), supported AWS services, and on-premises networks without exposing traffic to the public internet. Using AWS PrivateLink a VPC can expose interface VPC endpoints, similar to APIs, for others to query. This is a one way connection through a VPC barrier, instead of the two way connection provided by VPC Peering. Additionally, other security tools can be leveraged to enhance security of AWS PrivateLink, like security groups and VPC endpoint policies, which is similar to VPC Peering. AWS PrivateLink is compatible with DMS across VPCs, however it is not FedRAMP compliant. +AWS PrivateLink provides private connectivity between virtual private clouds (VPCs), supported AWS services, and on-premises networks without exposing traffic to the public internet. Using AWS PrivateLink a VPC can expose interface VPC endpoints, similar to APIs, for others to query. This is a one way connection through a VPC barrier, instead of the two way connection provided by VPC Peering. Additionally, other security tools can be leveraged to enhance security of AWS PrivateLink, like security groups and VPC endpoint policies, which is similar to VPC Peering. AWS PrivateLink is compatible with DMS across VPCs, however it is not FedRAMP compliant. - **Pros** - One way connection diff --git a/documentation/decisions/adr/2023-09-22-hhs-comms-site.md b/documentation/decisions/adr/2023-09-22-hhs-comms-site.md index 64dc4219f..e0f083168 100644 --- a/documentation/decisions/adr/2023-09-22-hhs-comms-site.md +++ b/documentation/decisions/adr/2023-09-22-hhs-comms-site.md @@ -2,7 +2,7 @@ - **Status:** Active - **Last Modified:** 2023-09-22 -- **Related Issue:** [#498](https://github.com/HHS/grants-equity/issues/498) +- **Related Issue:** [#498](https://github.com/HHS/simpler-grants-gov/issues/498) - **Deciders:** Lucas, Elizabeth, Julius, Billy - **Tags:** topic: comms @@ -12,7 +12,7 @@ HHS needs a way to distribute information about the Simpler Grants workstreams t ## Decision Drivers -- **Deployment Timeline:** We can deploy a site with this tool in less than a month +- **Deployment Timeline:** We can deploy a site with this tool in less than a month - **User Experience (UX):** The site is easy to navigate with a modern-looking user interface - **Hosting Cost:** It is not prohibitively expensive to extend access to all of HHS - **Access Control:** We can control who can read and edit the site with minimal overhead @@ -53,6 +53,7 @@ In parallel we'll actively work on developing a **visitor authentication option* ## Comparison Matrix ### Table Legend + - ✅ - Meets decision criteria - ❌ - Does not meet decision criteria - 🟡 - Partially meets criteria or requires more info @@ -61,13 +62,13 @@ In parallel we'll actively work on developing a **visitor authentication option* | Option | Timeline | UX | Cost | Access | Content | Feedback | | ------------------------------- | :------: | :-: | :--: | :----: | :-----: | :------: | -| GitBook: Guest Access | ✅ | ✅ | ❌ | 🟡 | ✅ | ✅ | -| GitBook: Visitor Authentication | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | -| Gitbook: “Private” Link | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | -| SharePoint: HHS-owned | 🟡 | 🟡 | ✅ | ✅ | 🟡 | ✅ | -| SharePoint: Contractor-owned | 🟡 | 🟡 | ❌ | 🟡 | ✅ | ✅ | -| Custom: HHS Intranet Page | 🟡 | ✅ | ✅ | 🟡 | ❌ | 🟡 | -| Custom: Contractor-built Site | ❌ | ✅ | ✅ | 🟡 | ✅ | ✅ | +| GitBook: Guest Access | ✅ | ✅ | ❌ | 🟡 | ✅ | ✅ | +| GitBook: Visitor Authentication | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | +| Gitbook: “Private” Link | ✅ | ✅ | ✅ | ❌ | ✅ | ✅ | +| SharePoint: HHS-owned | 🟡 | 🟡 | ✅ | ✅ | 🟡 | ✅ | +| SharePoint: Contractor-owned | 🟡 | 🟡 | ❌ | 🟡 | ✅ | ✅ | +| Custom: HHS Intranet Page | 🟡 | ✅ | ✅ | 🟡 | ❌ | 🟡 | +| Custom: Contractor-built Site | ❌ | ✅ | ✅ | 🟡 | ✅ | ✅ | ## Pros and Cons of the Options diff --git a/documentation/decisions/adr/2023-10-16-Listserv b/documentation/decisions/adr/2023-10-16-Listserv index 2c2dd6c4d..847a9ba98 100644 --- a/documentation/decisions/adr/2023-10-16-Listserv +++ b/documentation/decisions/adr/2023-10-16-Listserv @@ -2,7 +2,7 @@ - **Status:** Accepted - **Last Modified:** 2023-10-16 -- **Related Issue:** [#378](https://github.com/HHS/grants-equity/issues/378) +- **Related Issue:** [#378](https://github.com/HHS/simpler-grants-gov/issues/378) - **Deciders:** Lucas Brown, Andy Cochran, Billy Daly, Sarah Knopp, Sumi Thaiveettil - **Tags:** communucations, open source, listserv @@ -16,55 +16,54 @@ In order to foster an open and transparent communication with the public through - **Ease of use**: this will be used by HHS, contractors, and the general public and should be user-friendly and easy for both administrators and users to navigate, set up, and manage. - **Security**: The solution must prioritize strong security measures, consider encryption, user authentication, and protection against spam and phishing -- **Cost**: Evaluate the cost implications as this tool will be used by HHS, contractors, and the general public. +- **Cost**: Evaluate the cost implications as this tool will be used by HHS, contractors, and the general public. - **Features**: Consider features such as email list management, subscription options, message archiving, and customizable templates to meet the communication needs of your project. - **Scalability**: Ensure the solution can handle potential growth in subscribers and messages as your project expands without sacrificing performance. Nice to have + - **Community engagement**: Opt for a solution that encourages active participation, discussion, and collaboration within the open-source community. - **Open source**: Consider a solution that aligns with the open-source philosophy of your project, allowing for transparency, customization, and community contributions. - **Customization**: Choose a platform that allows you to customize the appearance and functionality of the listserves to match your project's branding and communication needs. - ## Decision Outcome We selected Google Groups as it excels in ease of use, ensuring that both HHS staff, contractors, and the general public can seamlessly navigate and manage communications. The platform's commitment to security, encompassing encryption, authentication, and anti-phishing measures, meets our high standards. Moreover, Google Groups offers cost-effective solutions suitable for the diverse user groups of our project. Its rich features, including email list management, subscription flexibility, and message archiving, cater to our project's unique communication needs. With scalability to accommodate growth, it's well-equipped to support our expanding community. While not mandatory, the platform's capacity for community engagement aligns with our desire for active participation and collaboration. It's a highly favorable choice that complements the open-source philosophy of our project, permitting customization for a cohesive branding and an inclusive communication environment. The decision to opt for Google Groups assures that we have an efficient and versatile listserv platform to meet our project's diverse and evolving requirements. ### Decision Considerations and Implications -We intend the primary focus of **Google Groups** to be as a channel to create discussion forums and online communities. Users can utilize it to post questions and exchange information and ideas. The channel should be used by users to post questions and exchange ideas and information. +We intend the primary focus of **Google Groups** to be as a channel to create discussion forums and online communities. Users can utilize it to post questions and exchange information and ideas. The channel should be used by users to post questions and exchange ideas and information. If users have private questions, the **Contact Us** email at simplergrantsgov@hhs.gov is the best method of communication. -The email marketing tool that we will select in the ADR: [#590](https://github.com/HHS/grants-equity/issues/590) will be used for individuals who wish to subscribe to Simpler Grants.gov newsletters. These newsletters are tailored for targeted messaging and notifications, including updates about the Simpler Grants.gov project. +The email marketing tool that we will select in the ADR: [#590](https://github.com/HHS/simpler-grants-gov/issues/590) will be used for individuals who wish to subscribe to Simpler Grants.gov newsletters. These newsletters are tailored for targeted messaging and notifications, including updates about the Simpler Grants.gov project. Regarding Google Groups, it's important to note that if we plan to use individual emails from our Google Group to send newsletters, we must obtain explicit permission from users to send them newsletter notifications. Additionally, we should explore how we can import or integrate individuals who join Google Groups and wish to receive newsletters. When implementing and using Google Groups (listserv), the 'Contact Us' option, and an email marketing tool, it's important that we clearly communicate the purpose of each tool and guide users on the best way to reach out to us, as there are distinct differences in their usage. - ### Positive Consequences -- **User-Friendly Experience:** Google Groups provides an intuitive and user-friendly interface, ensuring that both administrators and members can easily navigate and manage communications. -- **Robust Security:** The platform prioritizes security, offering features like encryption, user authentication, and protection against spam and phishing. -- **Cost-Effective:** Google Groups offers cost-effective solutions, aligning with the budget constraints of the project. -- **Feature-Rich:** Google Groups comes with a suite of features, including email list management, subscription options, message archiving, and customizable templates. -- **Scalability:** The platform can accommodate potential growth in subscribers and messages as the project expands without compromising performance. -- **Community Engagement:** While not a core requirement, Google Groups encourages community engagement, discussion, and collaboration within the open-source community. -- **Open Source Alignment:** The platform aligns with the open-source philosophy of the project, promoting transparency, customization, and community contributions. +- **User-Friendly Experience:** Google Groups provides an intuitive and user-friendly interface, ensuring that both administrators and members can easily navigate and manage communications. +- **Robust Security:** The platform prioritizes security, offering features like encryption, user authentication, and protection against spam and phishing. +- **Cost-Effective:** Google Groups offers cost-effective solutions, aligning with the budget constraints of the project. +- **Feature-Rich:** Google Groups comes with a suite of features, including email list management, subscription options, message archiving, and customizable templates. +- **Scalability:** The platform can accommodate potential growth in subscribers and messages as the project expands without compromising performance. +- **Community Engagement:** While not a core requirement, Google Groups encourages community engagement, discussion, and collaboration within the open-source community. +- **Open Source Alignment:** The platform aligns with the open-source philosophy of the project, promoting transparency, customization, and community contributions. ### Negative Consequences - **Dependence on External Platform:** Choosing an external platform like Google Groups may raise concerns about dependence on a third-party service. This dependency could potentially result in disruptions if the service experiences downtime or policy changes. - **Privacy Concerns:** Storing project communications on an external platform may raise privacy concerns, particularly for sensitive or confidential information. -- **Limited Control:** While Google Groups allows some customization, it may not offer the same level of control as an internally hosted solution. +- **Limited Control:** While Google Groups allows some customization, it may not offer the same level of control as an internally hosted solution. - **Data Migration Challenges:** Transferring data to and from Google Groups may present challenges - **User Account Requirements:** To participate in Google Groups, users typically need Google accounts. This requirement might exclude potential participants who do not wish to create Google accounts or who have restrictions on using Google services. - **Advertisement Display:** Google Groups may display advertisements to users, which could be distracting or raise concerns about privacy and data usage. ### Back-up Options -- **Mailman:** +- **Mailman:** - Pros: Mailman is an open-source email list management software. It provides a highly customizable and self-hosted solution. It aligns with the open-source philosophy, promotes community contributions, and offers robust security. - Cons: Setting up and maintaining Mailman may require more technical expertise. The user interface may not be as user-friendly as some commercial alternatives. - **Microsoft 365 Groups:** @@ -77,9 +76,6 @@ When implementing and using Google Groups (listserv), the 'Contact Us' option, a - Pros: Some web hosting providers offer email list management tools with hosting plans. These can provide full control and customization. - Cons: The availability of such services can vary among hosting providers. It may require technical knowledge to set up and maintain. - ### Open Questions -* How will Google Groups integrate or be used with the email marketing tool that we will use in the future? This should be considered in the [Email Marketing Tool ADR #590](https://github.com/HHS/grants-equity/issues/590). - - +- How will Google Groups integrate or be used with the email marketing tool that we will use in the future? This should be considered in the [Email Marketing Tool ADR #590](https://github.com/HHS/simpler-grants-gov/issues/590). diff --git a/documentation/decisions/template.md b/documentation/decisions/template.md index 7570b66c0..2b93af5b3 100644 --- a/documentation/decisions/template.md +++ b/documentation/decisions/template.md @@ -2,7 +2,7 @@ - **Status:** {Active | deprecation reason, e.g. "Superseded By [xxx](yyyymmdd-xxx.md)"} - **Last Modified:** {YYYY-MM-DD when the decision was last updated} -- **Related Issue:** [#{issue number}](https://github.com/HHS/grants-equity/issues/{issue number}) +- **Related Issue:** [#{issue number}](https://github.com/HHS/simpler-grants-gov/issues/{issue number}) - **Deciders:** {list everyone involved in the decision} - **Tags:** {space and/or comma separated list of tags} diff --git a/documentation/milestones/individual_milestones/api_planning.md b/documentation/milestones/individual_milestones/api_planning.md index 806903e5a..526d9a1d6 100644 --- a/documentation/milestones/individual_milestones/api_planning.md +++ b/documentation/milestones/individual_milestones/api_planning.md @@ -1,17 +1,17 @@ # API Planning -| Field | Value | -| --------------- | ------------------------------------------------------------ | -| Document Status | Completed | -| Epic Link | [Issue 42](https://github.com/HHS/grants-equity/issues/42) | -| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | -| Product Owner | Lucas Brown | -| Document Owner | Billy Daly | -| Lead Developer | Aaron Couch | -| Lead Designer | Andy Cochran | - +| Field | Value | +| --------------- | --------------------------------------------------------------- | +| Document Status | Completed | +| Epic Link | [Issue 42](https://github.com/HHS/simpler-grants-gov/issues/42) | +| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | +| Product Owner | Lucas Brown | +| Document Owner | Billy Daly | +| Lead Developer | Aaron Couch | +| Lead Designer | Andy Cochran | ## Short description + Formalize a series of architectural decisions about the API, including the technology stack we will use, the type of API we will build, and the services we'll leverage to deploy and host it. @@ -19,6 +19,7 @@ Formalize a series of architectural decisions about the API, including the techn ## Goals ### Business description & value + We want to select a technology stack that will maximize the long-term maintainability and performance of the API that we build. @@ -26,6 +27,7 @@ We want to select a technology stack that will maximize the long-term maintainab The prime motivation for the decisions outlined below is to select tools that have a proven track record for API development, are relatively accessible to both internal and external stakeholders, and can support the future needs of the project both in terms of scale and complexity. ### User Stories + - As an **HHS Staff Member**, I want: @@ -118,6 +120,7 @@ Some factors to consider are: - How easily does this option scale? ### Definition of done + - [ ] The tools and services chosen have been authorized under the Grants.gov ATO (Authority to Operate) and/or are FedRAMP approved @@ -131,6 +134,7 @@ Some factors to consider are: - [ ] The diagram is stored in a format that supports tracking individual changes with version control ### Proposed metrics for measuring goals/value/definition of done + #### One-time metrics @@ -164,13 +168,15 @@ The following metrics should be tracked about the tools selected within this met 2. Number of GitHub stars on main repository ### Destination for live updating metrics + -Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/grants-equity/issues/65) +Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/simpler-grants-gov/issues/65) ## Planning ### Assumptions & dependencies + What capabilities / milestones do we expect to be in place at the beginning of work @@ -184,54 +190,61 @@ beginning of work on this milestone? - [x] None ### Open questions + - [x] None ### Not doing + -The following work will *not* be completed as part of this milestone: +The following work will _not_ be completed as part of this milestone: 1. **Deploying services:** This milestone involves evaluating and selecting the tools that constitute the API technology stack, but does not involve actively setting up the code base to implement or deploying any services ## Integrations ### Translations + -*Does this milestone involve delivering any content that needs translation?* +_Does this milestone involve delivering any content that needs translation?_ -*If so, when will English-language content be locked? Then when will translation be started and completed?* +_If so, when will English-language content be locked? Then when will translation be started and completed?_ - No ### Services going into PROD for the first time + -*This can include services going into PROD behind a feature flag that is not turned on.* +_This can include services going into PROD behind a feature flag that is not turned on._ 1. No, this is just a planning milestone ### Services being integrated in PROD for the first time + -*Are there multiple services that are being connected for the first time in PROD?* +_Are there multiple services that are being connected for the first time in PROD?_ 1. No, this is just a planning milestone ### Data being shared publicly for the first time + -*Are there any fields being shared publicly that have never been shared in PROD before?* +_Are there any fields being shared publicly that have never been shared in PROD before?_ 1. No, this is just a planning milestone ### Security considerations + -*Does this milestone expose any new attack vectors or expand the attack surface of the product?* +_Does this milestone expose any new attack vectors or expand the attack surface of the product?_ -*If so, how are we addressing these risks?* +_If so, how are we addressing these risks?_ 1. No, this is just a planning milestone diff --git a/documentation/milestones/individual_milestones/communication_platforms.md b/documentation/milestones/individual_milestones/communication_platforms.md index 5b98b8b76..06333d40c 100644 --- a/documentation/milestones/individual_milestones/communication_platforms.md +++ b/documentation/milestones/individual_milestones/communication_platforms.md @@ -1,14 +1,14 @@ # Communication platforms -| Field | Value | -| --------------- | ------------------------------------------------------------ | -| Document Status | Completed | -| Epic Link | [Issue 47](https://github.com/HHS/grants-equity/issues/47) | -| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | -| Product Owner | Lucas Brown | -| Document Owner | Billy Daly | -| Lead Developer | Aaron Couch | -| Lead Designer | Andy Cochran | +| Field | Value | +| --------------- | --------------------------------------------------------------- | +| Document Status | Completed | +| Epic Link | [Issue 47](https://github.com/HHS/simpler-grants-gov/issues/47) | +| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | +| Product Owner | Lucas Brown | +| Document Owner | Billy Daly | +| Lead Developer | Aaron Couch | +| Lead Designer | Andy Cochran | ## Short description @@ -25,18 +25,18 @@ These need to be accessible to internal (HHS or employed by HHS) partners as wel ### User stories - As a **full-time HHS staff member**, I want to: - - adopt tools that are intuitive and easy to use, so that I can spend less time learning how to use these tools and more time completing the important work they are designed to facilitate. - - review contributions from external users before those changes are published, so that we can ensure the content aligns with our values as an agency. - - be able to access these communication platforms from within the HHS network, so that I can reliably get work done while I'm at the office. + - adopt tools that are intuitive and easy to use, so that I can spend less time learning how to use these tools and more time completing the important work they are designed to facilitate. + - review contributions from external users before those changes are published, so that we can ensure the content aligns with our values as an agency. + - be able to access these communication platforms from within the HHS network, so that I can reliably get work done while I'm at the office. - As a **member of an HHS contractor team**, I want to: - - adopt tools require as little ongoing maintenance, so that I minimize the amount of time spent supporting the deliverables associated with this milestone and begin working on delivering future milestones. - - monitor user participation across these platforms, so that I can understand how well we are engaging stakeholders throughout this process. - - track metrics about our projects like task burndown, so that we can monitor progress and identify blockers more quickly. + - adopt tools require as little ongoing maintenance, so that I minimize the amount of time spent supporting the deliverables associated with this milestone and begin working on delivering future milestones. + - monitor user participation across these platforms, so that I can understand how well we are engaging stakeholders throughout this process. + - track metrics about our projects like task burndown, so that we can monitor progress and identify blockers more quickly. - As a **member of the public**, I want to: - - know when HHS is hosting public meetings about grants.gov, so that I can help inform the priorities and roadmap for the new grants.gov - - be able to access and view project documents and tasks without logging in, so that I can understand the priorities of the project and the progress being made on those priorities. - - be able to report issues with or requests features for the team work on, so that the new version of grants.gov actually meets my needs. - - be able to ask questions about or recommend improvements to documentation, so that the documentation is clear and easy to understand for other members of the public as well. + - know when HHS is hosting public meetings about grants.gov, so that I can help inform the priorities and roadmap for the new grants.gov + - be able to access and view project documents and tasks without logging in, so that I can understand the priorities of the project and the progress being made on those priorities. + - be able to report issues with or requests features for the team work on, so that the new version of grants.gov actually meets my needs. + - be able to ask questions about or recommend improvements to documentation, so that the documentation is clear and easy to understand for other members of the public as well. ## Technical description @@ -157,7 +157,7 @@ Ideally, the tool would have the ability to designate some users as direct edito - [ ] At least 5 members of contractor teams (employed by HHS) have been onboarded. - [ ] At least 3 members of the general public have been onboarded. - [ ] New users can be onboarded to the tool for no cost to the user in a process that takes less than 2 days. - - [ ] Services are accessible to all people on the HHS network, public internet, and *preferably* the White House network and most or all agency networks + - [ ] Services are accessible to all people on the HHS network, public internet, and _preferably_ the White House network and most or all agency networks - [ ] Onboarding instructions for new users are clearly and accessibly documented in a public place. - [ ] Instructions for the internal team that assists with onboarding new users are clearly and accessibly documented in a public place. - [ ] Code for managing and deploying these services is deployed to `main` & PROD (if necessary) @@ -239,11 +239,12 @@ TODO: See if we can reduce the list of metrics to track ### Destination for live updating metrics -Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/grants-equity/issues/65) +Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/simpler-grants-gov/issues/65) ## Planning ### Assumptions & dependencies + What capabilities / milestones do we expect to be in place at the beginning of work @@ -257,25 +258,28 @@ beginning of work on this milestone? - [x] **Internationalization:** While there will be content delivered within this milestone that needs to be translated in the future, we do not expect to have a framework for managing translations set up by the time this milestone is delivered. ### Open questions + - [x] None ### Not doing + -The following work will *not* be completed as part of this milestone: +The following work will _not_ be completed as part of this milestone: 1. **Translating onboarding documents:** Translation of key documents will be covered in an upcoming milestone ## Integrations ### Translations + -*Does this milestone involve delivering any content that needs translation?* +_Does this milestone involve delivering any content that needs translation?_ -*If so, when will English-language content be locked? Then when will translation be started and completed?* +_If so, when will English-language content be locked? Then when will translation be started and completed?_ - Yes, the onboarding documents for each of the tools will need to be translated: - Chat @@ -290,9 +294,10 @@ The following work will *not* be completed as part of this milestone: - Timeline and strategy for translation is still TBD ### Services going into PROD for the first time + -*This can include services going into PROD behind a feature flag that is not turned on.* +_This can include services going into PROD behind a feature flag that is not turned on._ Yes the following tools will be deployed: @@ -307,9 +312,10 @@ Yes the following tools will be deployed: 9. Contact us tool ### Services being integrated in PROD for the first time + -*Are there multiple services that are being connected for the first time in PROD?* +_Are there multiple services that are being connected for the first time in PROD?_ Yes, we expect there to be some integrations between the following tools in production: @@ -322,21 +328,23 @@ Yes, we expect there to be some integrations between the following tools in prod 7. **Shared Calendar + Wiki:** Option to embed public calendar events in the wiki ### Data being shared publicly for the first time + -*Are there any fields being shared publicly that have never been shared in PROD before?* +_Are there any fields being shared publicly that have never been shared in PROD before?_ 1. No ### Security considerations + -*Does this milestone expose any new attack vectors or expand the attack surface of the product?* +_Does this milestone expose any new attack vectors or expand the attack surface of the product?_ 1. **Public Access:** While most of these tools are meant for sharing publicly available content to external stakeholders, some tools we may also want to use for internal collaboration (e.g. document sharing, shared calendar). As a result we must be mindful of configuration changes that may expose internal content (documents, events, etc.) to members of the public who are also on these platforms. 2. **External Contributions:** If members of the public are able to comment on or contribute content to these communications platforms, certain contributors may contribute content that does not align with the values or perspectives of HHS or the community guidelines established for the open source community. -*If so, how are we addressing these risks?* +_If so, how are we addressing these risks?_ 1. **Public Access:** Document expectations around what content can be made public on these platforms and train internal stakeholders (e.g. HHS full-time staff and HHS contractors) on how to appropriately determine whether content can be published on these platforms. 2. **External Contributions:** Document the community guidelines within the public repository and prioritize tools and platforms that enable content moderation and review, so that internal members can ensure that inappropriate content is either prevented from being published or removed once its identified. diff --git a/documentation/milestones/individual_milestones/db_planning.md b/documentation/milestones/individual_milestones/db_planning.md index bae8375b3..5b26758d4 100644 --- a/documentation/milestones/individual_milestones/db_planning.md +++ b/documentation/milestones/individual_milestones/db_planning.md @@ -1,17 +1,17 @@ # DB Planning -| Field | Value | -| --------------- | ------------------------------------------------------------ | -| Document Status | Completed | -| Epic Link | [Issue 48](https://github.com/HHS/grants-equity/issues/48) | -| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | -| Product Owner | Lucas Brown | -| Document Owner | Gina Carson | -| Lead Developer | Aaron Couch | -| Lead Designer | Andy Cochran | - +| Field | Value | +| --------------- | --------------------------------------------------------------- | +| Document Status | Completed | +| Epic Link | [Issue 48](https://github.com/HHS/simpler-grants-gov/issues/48) | +| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | +| Product Owner | Lucas Brown | +| Document Owner | Gina Carson | +| Lead Developer | Aaron Couch | +| Lead Designer | Andy Cochran | ## Short description + Formalize a series of architectural decisions about how data is stored, including the type of database we will use and the platform we'll use host it. @@ -19,11 +19,13 @@ Formalize a series of architectural decisions about how data is stored, includin ## Goals ### Business description & value + This milestone is critical because it serves as the initial planning for the beta.grants.gov database and ultimately future grants.gov database, and has large downstream impact for the APIs and development related to Grants.gov. ### User Stories + - As an **HHS Staff Member**, I want: @@ -95,6 +97,7 @@ Some factors to consider are: - Does the service offer features like automatic backups or read replicas? ### Definition of done + - [ ] The tools and services chosen have been authorized under the Grants.gov ATO (Authority to Operate) and/or are FedRAMP approved @@ -104,11 +107,13 @@ Some factors to consider are: - [ ] Database Hosting Service ### Proposed metrics for measuring goals/value/definition of done + N/A for planning milestone ### Destination for live updating metrics + N/A for planning milestone @@ -116,6 +121,7 @@ N/A for planning milestone ## Planning ### Assumptions & dependencies + What capabilities / milestones do we expect to be in place at the beginning of work @@ -129,60 +135,64 @@ beginning of work on this milestone? - [x] None ### Open questions + - [ ] Will this database serve as an OLTP system, OLAP system, or both? Will this database be used for analytics, and is there a need for a second database to be created with data pipelines? -- [ ] What are the current datastores that support the legacy Grants.gov system? - - Oracle on RDS (used for opportunity data, etc) - - MongoDB (I'm not sure exactly what data is in the document store) - - Flat file storage with application data +- [ ] What are the current datastores that support the legacy Grants.gov system? - Oracle on RDS (used for opportunity data, etc) - MongoDB (I'm not sure exactly what data is in the document store) - Flat file storage with application data - [ ] Is the existing Grants.gov database heavy on read or write transactions? - [ ] How many external sources does the existing database have? ### Not doing + -The following work will *not* be completed as part of this milestone: +The following work will _not_ be completed as part of this milestone: 1. **Deploying services:** This milestone involves evaluating and selecting the tools that constitute the API technology stack, but does not involve actively setting up the code base to implement or deploying any services ## Integrations ### Translations + -*Does this milestone involve delivering any content that needs translation?* +_Does this milestone involve delivering any content that needs translation?_ -*If so, when will English-language content be locked? Then when will translation be started and completed?* +_If so, when will English-language content be locked? Then when will translation be started and completed?_ - No ### Services going into PROD for the first time + -*This can include services going into PROD behind a feature flag that is not turned on.* +_This can include services going into PROD behind a feature flag that is not turned on._ 1. No ### Services being integrated in PROD for the first time + -*Are there multiple services that are being connected for the first time in PROD?* +_Are there multiple services that are being connected for the first time in PROD?_ 1. No ### Data being shared publicly for the first time + -*Are there any fields being shared publicly that have never been shared in PROD before?* +_Are there any fields being shared publicly that have never been shared in PROD before?_ 1. No ### Security considerations + -*Does this milestone expose any new attack vectors or expand the attack surface of the product?* +_Does this milestone expose any new attack vectors or expand the attack surface of the product?_ -*If so, how are we addressing these risks?* +_If so, how are we addressing these risks?_ 1. No diff --git a/documentation/milestones/individual_milestones/developer_tools.md b/documentation/milestones/individual_milestones/developer_tools.md index 7a16ecbb3..744f83e9b 100644 --- a/documentation/milestones/individual_milestones/developer_tools.md +++ b/documentation/milestones/individual_milestones/developer_tools.md @@ -1,14 +1,14 @@ # Developer Tools -| Field | Value | -| --------------- | ------------------------------------------------------------ | -| Document Status | Completed | -| Epic Link | [Issue 50](https://github.com/HHS/grants-equity/issues/50) | -| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | -| Product Owner | Lucas Brown | -| Document Owner | Billy Daly | -| Lead Developer | Aaron Couch | -| Lead Designer | Andy Cochran | +| Field | Value | +| --------------- | --------------------------------------------------------------- | +| Document Status | Completed | +| Epic Link | [Issue 50](https://github.com/HHS/simpler-grants-gov/issues/50) | +| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | +| Product Owner | Lucas Brown | +| Document Owner | Billy Daly | +| Lead Developer | Aaron Couch | +| Lead Designer | Andy Cochran | ## Short description @@ -139,7 +139,7 @@ Evaluate and adopt a set of tools that standardize and enforce best practices ar ### Destination for live updating metrics -Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/grants-equity/issues/65) +Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/simpler-grants-gov/issues/65) ## Planning @@ -163,54 +163,55 @@ beginning of work on this milestone? ### Not doing -The following work will *not* be completed as part of this milestone: +The following work will _not_ be completed as part of this milestone: -1. **Full CI/CD setup:** While we *do* want the code quality and security checks to be run on each push to GitHub, the task runner that orchestrates these checks does not need to be the full CI/CD pipeline that will also manage production deployments of the frontend or backend codebases. +1. **Full CI/CD setup:** While we _do_ want the code quality and security checks to be run on each push to GitHub, the task runner that orchestrates these checks does not need to be the full CI/CD pipeline that will also manage production deployments of the frontend or backend codebases. ## Integrations ### Translations -*Does this milestone involve delivering any content that needs translation?* +_Does this milestone involve delivering any content that needs translation?_ - Instructions for adopting and using developer tools - Instructions for reporting security vulnerabilities -*If so, when will English-language content be locked? Then when will translation be started and completed?* +_If so, when will English-language content be locked? Then when will translation be started and completed?_ - Languages to support TBD - Translation timeline TBD ### Services going into PROD for the first time -*This can include services going into PROD behind a feature flag that is not turned on.* +_This can include services going into PROD behind a feature flag that is not turned on._ 1. **Task Runner:** This milestone involves setting up a task runner for the repository that will execute a series of code quality and security checks for both the backend and frontend parts of the codebase 2. **Secrets Management:** This milestone includes setting up a service to manage secrets. ### Services being integrated in PROD for the first time -*Are there multiple services that are being connected for the first time in PROD?* +_Are there multiple services that are being connected for the first time in PROD?_ 1. **Task Runner & Secrets Management:** In addition to deploying these services separately, this milestone should also support a strategy for injecting secrets into the task runner during the CI/CD pipeline for running integration tests. ### Data being shared publicly for the first time -*Are there any fields being shared publicly that have never been shared in PROD before?* +_Are there any fields being shared publicly that have never been shared in PROD before?_ 1. None ### Security considerations + -*Does this milestone expose any new attack vectors or expand the attack surface of the product?* +_Does this milestone expose any new attack vectors or expand the attack surface of the product?_ **Secrets Management:** This milestone includes selecting and deploying a secrets management service, which introduces two potential attack vectors: 1. Compromising the access to the secrets manager 2. Compromising individual secrets when they are injected -*If so, how are we addressing these risks?* +_If so, how are we addressing these risks?_ 1. **Least Privileged Access:** Access to the secrets manager should follow the [principle of least privilege (POLP)](https://csrc.nist.gov/glossary/term/least_privilege) 2. **Rotating Keys/Tokens:** All secrets, keys, and tokens stored in the secrets manager should have expiration dates (where possible) and we should prioritize secrets managers that support dynamically rotating keys and secrets diff --git a/documentation/milestones/individual_milestones/frontend_planning.md b/documentation/milestones/individual_milestones/frontend_planning.md index 9b038121b..df2ac943b 100644 --- a/documentation/milestones/individual_milestones/frontend_planning.md +++ b/documentation/milestones/individual_milestones/frontend_planning.md @@ -1,17 +1,17 @@ # Front-end Planning -| Field | Value | -| --------------- | ------------------------------------------------------------ | -| Document Status | Completed | -| Epic Link | [Issue 49](https://github.com/HHS/grants-equity/issues/49) | -| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | -| Product Owner | Lucas Brown | -| Document Owner | Billy Daly | -| Lead Developer | Aaron Couch | -| Lead Designer | Andy Cochran | - +| Field | Value | +| --------------- | --------------------------------------------------------------- | +| Document Status | Completed | +| Epic Link | [Issue 49](https://github.com/HHS/simpler-grants-gov/issues/49) | +| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | +| Product Owner | Lucas Brown | +| Document Owner | Billy Daly | +| Lead Developer | Aaron Couch | +| Lead Designer | Andy Cochran | ## Short description + Formalize a series of architectural decisions about the front-end, including the technology stack we will use and the services we'll leverage to deploy and host it. @@ -19,14 +19,15 @@ Formalize a series of architectural decisions about the front-end, including the ## Goals ### Business description & value + We want to select a technology stack that will maximize the long-term maintainability and performance of the front-end application that we build. The prime motivation for the decisions outlined below is to select tools that have a proven track record for front-end development, are relatively accessible to both internal and external stakeholders, and can support the future needs of the project both in terms of scale and complexity. - ### User Stories + - As an **HHS Staff Member**, I want: @@ -99,8 +100,8 @@ Some factors to consider are: - How expensive is it to deploy a front-end application with this option, both in terms of direct operating costs and in terms of team resources? - How easily does this option scale? - ### Definition of done + - [ ] The tools and services chosen have been authorized under the Grants.gov ATO (Authority to Operate) and/or are FedRAMP approved @@ -110,6 +111,7 @@ Some factors to consider are: - [ ] Front-end deployment service ### Proposed metrics for measuring goals/value/definition of done + #### One-time metrics @@ -134,13 +136,15 @@ The following metrics should be tracked about the tools selected within this met 2. Number of GitHub stars on main repository ### Destination for live updating metrics + -Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/grants-equity/issues/65) +Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/simpler-grants-gov/issues/65) ## Planning ### Assumptions & dependencies + What capabilities / milestones do we expect to be in place at the beginning of work @@ -154,54 +158,61 @@ beginning of work on this milestone? - [x] None ### Open questions + - [x] None ### Not doing + -The following work will *not* be completed as part of this milestone: +The following work will _not_ be completed as part of this milestone: 1. **Deploying services:** This milestone involves evaluating and selecting the tools that constitute the front-end technology stack, but does not involve actively setting up the code base to implement or deploying any services ## Integrations ### Translations + -*Does this milestone involve delivering any content that needs translation?* +_Does this milestone involve delivering any content that needs translation?_ -*If so, when will English-language content be locked? Then when will translation be started and completed?* +_If so, when will English-language content be locked? Then when will translation be started and completed?_ - No ### Services going into PROD for the first time + -*This can include services going into PROD behind a feature flag that is not turned on.* +_This can include services going into PROD behind a feature flag that is not turned on._ 1. No, this is just a planning milestone ### Services being integrated in PROD for the first time + -*Are there multiple services that are being connected for the first time in PROD?* +_Are there multiple services that are being connected for the first time in PROD?_ 1. No, this is just a planning milestone ### Data being shared publicly for the first time + -*Are there any fields being shared publicly that have never been shared in PROD before?* +_Are there any fields being shared publicly that have never been shared in PROD before?_ 1. No, this is just a planning milestone ### Security considerations + -*Does this milestone expose any new attack vectors or expand the attack surface of the product?* +_Does this milestone expose any new attack vectors or expand the attack surface of the product?_ -*If so, how are we addressing these risks?* +_If so, how are we addressing these risks?_ 1. No, this is just a planning milestone diff --git a/documentation/milestones/individual_milestones/get_opportunities.md b/documentation/milestones/individual_milestones/get_opportunities.md index ecb80ab4b..92aa6689a 100644 --- a/documentation/milestones/individual_milestones/get_opportunities.md +++ b/documentation/milestones/individual_milestones/get_opportunities.md @@ -1,25 +1,27 @@ # GET Opportunities Endpoint -| Field | Value | -| --------------- | ------------------------------------------------------------ | -| Document Status | Completed | -| Epic Link | [Issue 70](https://github.com/HHS/grants-equity/issues/70) | -| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | -| Product Owner | Lucas Brown | -| Document Owner | Billy Daly | -| Lead Developer | Aaron Couch | -| Lead Designer | Andy Cochran | +| Field | Value | +| --------------- | --------------------------------------------------------------- | +| Document Status | Completed | +| Epic Link | [Issue 70](https://github.com/HHS/simpler-grants-gov/issues/70) | +| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | +| Product Owner | Lucas Brown | +| Document Owner | Billy Daly | +| Lead Developer | Aaron Couch | +| Lead Designer | Andy Cochran | ## Short description + -- **What:** Deploy a public API endpoint to PROD iteratively that allows users to see at least one field per grant opportunity listed in grants.gov. +- **What:** Deploy a public API endpoint to PROD iteratively that allows users to see at least one field per grant opportunity listed in grants.gov. - **Why:** Build iteratively, validate connection to the database, and set the groundwork to continue to enhance the API. - **Who:** This release of the API will be mainly focused on delivering for the API consumer. ## Goals ### Business description & value + The launch of a public API endpoint which provides information about every grant opportunity in grants.gov represents the culmination of multiple internally focused deliverables and serves as the foundation for future development that relies on the API. @@ -32,6 +34,7 @@ By delivering this public endpoint and ensuring it remains available even when t - Delivering another public win that both internal and external stakeholders can rally around, which helps build momentum and enthusiam for the project ### User Stories + - As an **HHS staff member**, I want: @@ -80,34 +83,36 @@ The way that data is stored and delivered through the API should balance: - Ease of managing schema changes ### Definition of done + - [ ] The following infrastructure requirements are satisfied: - [ ] The code needed to build and deploy the site is merged to `main` - - [ ] The site is built and hosted with the tools selected in the [API Planning](https://github.com/HHS/grants-equity/issues/42) and [DB Planning](https://github.com/HHS/grants-equity/issues/48) milestones - - [ ] All code quality checks set up in the [Developer Tools milestone](https://github.com/HHS/grants-equity/issues/50) are passing - - [ ] The resources required to deploy and host the API are provisioned programmatically using the [Infrastructure-as-Code milestone](https://github.com/HHS/grants-equity/issues/123) framework - - [ ] Code changes are deployed using the CI/CD pipeline set up in [the Back-end CI/CD milestone](https://github.com/HHS/grants-equity/issues/57) + - [ ] The site is built and hosted with the tools selected in the [API Planning](https://github.com/HHS/simpler-grants-gov/issues/42) and [DB Planning](https://github.com/HHS/simpler-grants-gov/issues/48) milestones + - [ ] All code quality checks set up in the [Developer Tools milestone](https://github.com/HHS/simpler-grants-gov/issues/50) are passing + - [ ] The resources required to deploy and host the API are provisioned programmatically using the [Infrastructure-as-Code milestone](https://github.com/HHS/simpler-grants-gov/issues/123) framework + - [ ] Code changes are deployed using the CI/CD pipeline set up in [the Back-end CI/CD milestone](https://github.com/HHS/simpler-grants-gov/issues/57) - [ ] DB migrations are automatically configured through scripts that enable upgrading/downgrading database quickly and easily (e.g., by using Alembic https://github.com/sqlalchemy/alembic) - - [ ] The API has been load tested using the framework established in the [Peformance Testing Framework milestone](https://github.com/HHS/grants-equity/issues/69) to ensure that it remains performant under heavy user traffic - - [ ] Logging/monitoring is configured, and it both records the metrics defined below and alerts the development team when the API is down or other key monitoring thresholds are met (e.g. frequency of 4xx requests, response times, etc.) per the [API Logging & Monitoring milestone](https://github.com/HHS/grants-equity/issues/370) - - [ ] An incident response protocol is in place and the on-call team have followed that protocol in at least one training or simulation per the [Incident Response milestone](https://github.com/HHS/grants-equity/issues/373) + - [ ] The API has been load tested using the framework established in the [Peformance Testing Framework milestone](https://github.com/HHS/simpler-grants-gov/issues/69) to ensure that it remains performant under heavy user traffic + - [ ] Logging/monitoring is configured, and it both records the metrics defined below and alerts the development team when the API is down or other key monitoring thresholds are met (e.g. frequency of 4xx requests, response times, etc.) per the [API Logging & Monitoring milestone](https://github.com/HHS/simpler-grants-gov/issues/370) + - [ ] An incident response protocol is in place and the on-call team have followed that protocol in at least one training or simulation per the [Incident Response milestone](https://github.com/HHS/simpler-grants-gov/issues/373) - [ ] The chosen API URL sub-domain has been secured for future deployment of the API and we've contacted the teams working on the existing service (if any) that is currently accessed through this sub-domain - [ ] The following developer experience (DX) requirements are satisfied: - [ ] The API is live at the chosen URL - [ ] Developers can learn how to interact with the API by referencing the API documentation - [ ] The endpoint path indicates which major version of the API the developer is consuming - - [ ] Breaking changes to the API follow a predictable protocol that is documented within the [API Versioning milestone](https://github.com/HHS/grants-equity/issues/68) + - [ ] Breaking changes to the API follow a predictable protocol that is documented within the [API Versioning milestone](https://github.com/HHS/simpler-grants-gov/issues/68) - [ ] The endpoint is available when legacy grants.gov experiences planned or unplanned downtime, maintenance, and upgrades - - [ ] Test data is scripted to provide consistent and reliable test fixtures for integration tests and local development per the [Test Data and Schema milestone](https://github.com/HHS/grants-equity/issues/) + - [ ] Test data is scripted to provide consistent and reliable test fixtures for integration tests and local development per the [Test Data and Schema milestone](https://github.com/HHS/simpler-grants-gov/issues/) - [ ] All developers (including open source contributors) are able to spin up either database replica or test fixture data so that they can conduct local development. - - [ ] Feature flag framework is implemented so that functionality can be deployed to PROD without being turned on per the [Feature flag framework milestone](https://github.com/HHS/grants-equity/issues/) + - [ ] Feature flag framework is implemented so that functionality can be deployed to PROD without being turned on per the [Feature flag framework milestone](https://github.com/HHS/simpler-grants-gov/issues/) - [ ] The following data requirements are satisfied: - [ ] The endpoint returns all of the grant opportunities that are available on grants.gov - [ ] The endpoint returns at least one (1) field per opportunity - [ ] Updates to the data in legacy Grants.gov are propagated to the new endpoint within 1 hour ### Proposed metrics for measuring goals/value/definition of done + 1. Number of unique users accessing API @@ -118,48 +123,50 @@ The way that data is stored and delivered through the API should balance: 6. Average response time ### Destination for live updating metrics + -Page on the public wiki that is updated at the end of each sprint. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/grants-equity/issues/65) +Page on the public wiki that is updated at the end of each sprint. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/simpler-grants-gov/issues/65) ## Planning ### Assumptions & dependencies - - - -*What capabilities / milestones do we expect to be in place by the completion of work on this milestone?* - -- [ ] **[API Planning](https://github.com/HHS/grants-equity/issues/):** Determines the language, framework, and deployment service used to build and host the API. -- [ ] **[DB planning](https://github.com/HHS/grants-equity/issues/):** Determines the DMBS and hosting service used to store and manage the data serviced by the API. -- [ ] **[Developer tools](https://github.com/HHS/grants-equity/issues/):** Establishes a suite of tools used to ensure the quality and security of the API codebase. -- [ ] **[beta.grants.gov domain](https://github.com/HHS/grants-equity/issues/):** Secures access to the `beta.grants.gov` domain from which the API endpoints will be routed. -- [ ] **[Back-end CI/CD](https://github.com/HHS/grants-equity/issues/):** Sets up a CI/CD pipeline that will be used to test and publish code changes to the API. -- [ ] **[Data architecture](https://github.com/HHS/grants-equity/issues/):** Establishes the updated data model used to support the new GET Opportunities endpoint. -- [ ] **[Test data and schema](https://github.com/HHS/grants-equity/issues/):** Enables both project maintainers and open source contributors to effectively mock the database when developing or testing locally. -- [ ] **[Database (DB) replica](https://github.com/HHS/grants-equity/issues/):** Ensures parity between the set of opportunities returned by the new GET Opportunities endpoint and the legacy system. It also allows users to access the endpoint when there are outages on the legacy system. -- [ ] **[Feature flag framework](https://github.com/HHS/grants-equity/issues/):** Enables us to deploy new features or changes without immediately exposing them to the public. -- [ ] **[API documentation](https://github.com/HHS/grants-equity/issues/):** Establishes a location and strategy for publishing information about the GET Opportunities endpoint (and future API endpoints) that users can reference when learning how to interact with the API. -- [ ] **[API Versioning](https://github.com/HHS/grants-equity/issues/68):** Establishes a protocol for publishing breaking and non-breaking changes to the API. -- [ ] **[API Security Planning](https://github.com/HHS/grants-equity/issues/):** Sets up minimum security standards to protect the API endpoint, such as API keys, rate limits, and security incident response protocols. -- [ ] **[API Logging & Monitoring](https://github.com/HHS/grants-equity/issues/370):** Sets up logging for the API service and automatic alerts when there is an interruption in service -- [ ] **[Incident Response](https://github.com/HHS/grants-equity/issues/373):** Documents and trains staff on the incident response plan. -- [ ] **[Performance Testing Framework](https://github.com/HHS/grants-equity/issues/69):** Configures a framework for conducting performance and load testing of the API. + -*Are there any notable capabilities / milestones do NOT we expect to be in place by the completion of work on this milestone?* +_What capabilities / milestones do we expect to be in place by the completion of work on this milestone?_ + +- [ ] **[API Planning](https://github.com/HHS/simpler-grants-gov/issues/):** Determines the language, framework, and deployment service used to build and host the API. +- [ ] **[DB planning](https://github.com/HHS/simpler-grants-gov/issues/):** Determines the DMBS and hosting service used to store and manage the data serviced by the API. +- [ ] **[Developer tools](https://github.com/HHS/simpler-grants-gov/issues/):** Establishes a suite of tools used to ensure the quality and security of the API codebase. +- [ ] **[beta.grants.gov domain](https://github.com/HHS/simpler-grants-gov/issues/):** Secures access to the `beta.grants.gov` domain from which the API endpoints will be routed. +- [ ] **[Back-end CI/CD](https://github.com/HHS/simpler-grants-gov/issues/):** Sets up a CI/CD pipeline that will be used to test and publish code changes to the API. +- [ ] **[Data architecture](https://github.com/HHS/simpler-grants-gov/issues/):** Establishes the updated data model used to support the new GET Opportunities endpoint. +- [ ] **[Test data and schema](https://github.com/HHS/simpler-grants-gov/issues/):** Enables both project maintainers and open source contributors to effectively mock the database when developing or testing locally. +- [ ] **[Database (DB) replica](https://github.com/HHS/simpler-grants-gov/issues/):** Ensures parity between the set of opportunities returned by the new GET Opportunities endpoint and the legacy system. It also allows users to access the endpoint when there are outages on the legacy system. +- [ ] **[Feature flag framework](https://github.com/HHS/simpler-grants-gov/issues/):** Enables us to deploy new features or changes without immediately exposing them to the public. +- [ ] **[API documentation](https://github.com/HHS/simpler-grants-gov/issues/):** Establishes a location and strategy for publishing information about the GET Opportunities endpoint (and future API endpoints) that users can reference when learning how to interact with the API. +- [ ] **[API Versioning](https://github.com/HHS/simpler-grants-gov/issues/68):** Establishes a protocol for publishing breaking and non-breaking changes to the API. +- [ ] **[API Security Planning](https://github.com/HHS/simpler-grants-gov/issues/):** Sets up minimum security standards to protect the API endpoint, such as API keys, rate limits, and security incident response protocols. +- [ ] **[API Logging & Monitoring](https://github.com/HHS/simpler-grants-gov/issues/370):** Sets up logging for the API service and automatic alerts when there is an interruption in service +- [ ] **[Incident Response](https://github.com/HHS/simpler-grants-gov/issues/373):** Documents and trains staff on the incident response plan. +- [ ] **[Performance Testing Framework](https://github.com/HHS/simpler-grants-gov/issues/69):** Configures a framework for conducting performance and load testing of the API. + +_Are there any notable capabilities / milestones do NOT we expect to be in place by the completion of work on this milestone?_ - [ ] **AuthN/AuthZ:** While the implementation of rate limiting or other API security measures may require some basic authentication, the full AuthN/AuthZ framework will be developed in a later milestone. ### Open questions + - [x] None ### Not doing + -The following work will *not* be completed as part of this milestone: +The following work will _not_ be completed as part of this milestone: 1. **User Interface:** Because this milestone is focused on the API endpoint, it will not include delivering a user interface for non-technical users to access a list of opportunities. That work will be incorporated in the Search UI milestone instead. 2. **Translating API Docs:** Translation of key documents will be covered in an upcoming milestone. @@ -167,20 +174,22 @@ The following work will *not* be completed as part of this milestone: ## Integrations ### Translations + -*Does this milestone involve delivering any content that needs translation?* +_Does this milestone involve delivering any content that needs translation?_ Yes, portions of the API user guide and docs will need to be translated. -*If so, when will English-language content be locked? Then when will translation be started and completed?* +_If so, when will English-language content be locked? Then when will translation be started and completed?_ Timeline and strategy for translation is still TBD. ### Services going into PROD for the first time + -*This can include services going into PROD behind a feature flag that is not turned on.* +_This can include services going into PROD behind a feature flag that is not turned on._ 1. **API:** This milestone is the official release of the `beta.grants.gov/api` 2. **Replica Database:** A replica of relevant tables from the legacy database @@ -188,29 +197,32 @@ Timeline and strategy for translation is still TBD. 4. **ETL Pipeline:** An ETL pipeline that both replicates data from legacy grants.gov and then transforms that data into the new `beta.grants.gov` data model ### Services being integrated in PROD for the first time + -*Are there multiple services that are being connected for the first time in PROD?* +_Are there multiple services that are being connected for the first time in PROD?_ 1. **API + Static Site or Wiki:** We will need to host the API docs and user guide on either the wiki platform or the static site. ### Data being shared publicly for the first time + -*Are there any fields being shared publicly that have never been shared in PROD before?* +_Are there any fields being shared publicly that have never been shared in PROD before?_ 1. **Opportunity Field(s):** This milestone will expose at least one field from the opportunity resource in production. ### Security considerations + -*Does this milestone expose any new attack vectors or expand the attack surface of the product?* +_Does this milestone expose any new attack vectors or expand the attack surface of the product?_ 1. **Legacy DB Access:** Because this milestone requires replicating data from the legacy database, it exposes a new potential attack vector to that database. 2. **Replica Database Access:** This milestone expands the attack surface of the application by introducing the replica database as another data store that needs to be secured against unauthorized access. 3. **API:** This milestone milestone also expands the attack surface of the application by launching the API, which needs to be secured against Denial of Service (DoS) attackes. -*If so, how are we addressing these risks?* +_If so, how are we addressing these risks?_ 1. **Security Approval:** Before the official launch of the API to the public, we will be reviewing our infrastructure and code security practices with the HHS team to ensure that they adhere to HHS standards. 2. **Developer Tools:** As part of the Developer Tools milestone, the team is setting up a series of tools that will enforce certain code quality standards and security checks. These include things like secrets management, code linting, dependency monitoring, etc. diff --git a/documentation/milestones/individual_milestones/static_site.md b/documentation/milestones/individual_milestones/static_site.md index 059678a35..f53ed4d20 100644 --- a/documentation/milestones/individual_milestones/static_site.md +++ b/documentation/milestones/individual_milestones/static_site.md @@ -1,14 +1,14 @@ # Static Site for Simpler Grants.gov Project -| Field | Value | -| --------------- | ------------------------------------------------------------ | -| Document Status | Completed | -| Epic Link | [Issue 62](https://github.com/HHS/grants-equity/issues/62) | -| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | -| Product Owner | Lucas Brown | -| Document Owner | Billy Daly | -| Lead Developer | Aaron Couch | -| Lead Designer | Andy Cochran | +| Field | Value | +| --------------- | --------------------------------------------------------------- | +| Document Status | Completed | +| Epic Link | [Issue 62](https://github.com/HHS/simpler-grants-gov/issues/62) | +| Epic Dashboard | [Milestone Roadmap](https://github.com/orgs/HHS/projects/12) | +| Product Owner | Lucas Brown | +| Document Owner | Billy Daly | +| Lead Developer | Aaron Couch | +| Lead Designer | Andy Cochran | ## Short description @@ -75,15 +75,15 @@ Process for drafting and updating the content of the site should balance: - [ ] The following infrastructure requirements are satisfied: - [ ] The code needed to build and deploy the site is merged to `main` - - [ ] The site is built and hosted with the tools selected in the [Front-end Planning milestone](https://github.com/HHS/grants-equity/issues/49) - - [ ] All code quality checks set up in the [Developer Tools milestone](https://github.com/HHS/grants-equity/issues/50) are passing - - [ ] The resources required to deploy and host the site are provisioned programmatically using the framework established in the [Infrastructure-as-Code milestone](https://github.com/HHS/grants-equity/issues/123) - - [ ] Code changes are deployed using the CI/CD pipeline set up in [the Front-end CI/CD milestone](https://github.com/HHS/grants-equity/issues/58) + - [ ] The site is built and hosted with the tools selected in the [Front-end Planning milestone](https://github.com/HHS/simpler-grants-gov/issues/49) + - [ ] All code quality checks set up in the [Developer Tools milestone](https://github.com/HHS/simpler-grants-gov/issues/50) are passing + - [ ] The resources required to deploy and host the site are provisioned programmatically using the framework established in the [Infrastructure-as-Code milestone](https://github.com/HHS/simpler-grants-gov/issues/123) + - [ ] Code changes are deployed using the CI/CD pipeline set up in [the Front-end CI/CD milestone](https://github.com/HHS/simpler-grants-gov/issues/58) - [ ] The following user experience (UX) requirements are satisfied: - [ ] Anyone can access a live version of the site at beta.grants.gov - - [ ] The site adopts the UI principles and framework established in the [Foundational UI milestone](https://github.com/HHS/grants-equity/issues/60) + - [ ] The site adopts the UI principles and framework established in the [Foundational UI milestone](https://github.com/HHS/simpler-grants-gov/issues/60) - [ ] The site is 508 compliant and satisfies the other guidelines outlined in the Accessibility Planning milestone - - [ ] Web traffic data for the site is actively being collected by the framework implemented in the [Web Analytics milestone](https://github.com/HHS/grants-equity/issues/63) + - [ ] Web traffic data for the site is actively being collected by the framework implemented in the [Web Analytics milestone](https://github.com/HHS/simpler-grants-gov/issues/63) - [ ] Additional development tickets have been created for collecting other data needed to calculate the metrics below - [ ] The following content requirements are satisfied: - [ ] All content is deployed to beta.grants.gov @@ -99,50 +99,53 @@ Process for drafting and updating the content of the site should balance: 1. Number of unique site visitors 2. Total number of site visits -4. Uptime service -5. [Lighthouse score](lighthouse) for the site -6. Deployment build time -7. Deployment/hosting costs -8. Number of visits to outbound links to the following external resources (once added to the site) +3. Uptime service +4. [Lighthouse score](lighthouse) for the site +5. Deployment build time +6. Deployment/hosting costs +7. Number of visits to outbound links to the following external resources (once added to the site) - Open source repository - Open source wiki - Open source chat -9. Stretch: Number of form responses +8. Stretch: Number of form responses ### Destination for live updating metrics -Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/grants-equity/issues/65) +Page on the public wiki. **Note:** This will likely change once we deliver [the Public Measurement Dashboard milestone](https://github.com/HHS/simpler-grants-gov/issues/65) ## Planning ### Assumptions & dependencies + -*What capabilities / milestones do we expect to be in place by the completion of work on this milestone?* +_What capabilities / milestones do we expect to be in place by the completion of work on this milestone?_ -- [ ] **[Front-end Planning](https://github.com/HHS/grants-equity/issues/49):** Determines the language, framework, and deployment service used to build and host the site. -- [ ] **[Developer Tools](https://github.com/HHS/grants-equity/issues/50):** Establishes a suite of tools used to ensure the quality and security of the site codebase. -- [ ] **[beta.grants.gov Domain](https://github.com/HHS/grants-equity/issues/51):** Secures access to the `beta.grants.gov` domain which is where the site will be hosted. -- [ ] **[Security Approval](https://github.com/HHS/grants-equity/issues/53):** Ensures that the site and the infrastructure that hosts it are comply with HHS security standards and practices. -- [ ] **[Infrastructure-as-Code](https://github.com/HHS/grants-equity/issues/123):** Programmatically provisions the resources needed to deploy and host this site. +- [ ] **[Front-end Planning](https://github.com/HHS/simpler-grants-gov/issues/49):** Determines the language, framework, and deployment service used to build and host the site. +- [ ] **[Developer Tools](https://github.com/HHS/simpler-grants-gov/issues/50):** Establishes a suite of tools used to ensure the quality and security of the site codebase. +- [ ] **[beta.grants.gov Domain](https://github.com/HHS/simpler-grants-gov/issues/51):** Secures access to the `beta.grants.gov` domain which is where the site will be hosted. +- [ ] **[Security Approval](https://github.com/HHS/simpler-grants-gov/issues/53):** Ensures that the site and the infrastructure that hosts it are comply with HHS security standards and practices. +- [ ] **[Infrastructure-as-Code](https://github.com/HHS/simpler-grants-gov/issues/123):** Programmatically provisions the resources needed to deploy and host this site. - [ ] **[Front-end CI/CD](https://github.com/orgs/HHS/projects/12/views/3?pane=issue&itemId=31950276):** Sets up a CI/CD pipeline that will be used to test and publish code changes to the site. -- [ ] **[Foundational UI](https://github.com/HHS/grants-equity/issues/60):** Determines the UI framework that the site will adopt before launch. -- [ ] **[Web Analytics](https://github.com/HHS/grants-equity/issues/63):** Enables tracking key success metrics for this milestone, e.g. site traffic and number of unique visitors. +- [ ] **[Foundational UI](https://github.com/HHS/simpler-grants-gov/issues/60):** Determines the UI framework that the site will adopt before launch. +- [ ] **[Web Analytics](https://github.com/HHS/simpler-grants-gov/issues/63):** Enables tracking key success metrics for this milestone, e.g. site traffic and number of unique visitors. -*Are there any notable capabilities / milestones do NOT we expect to be in place by the completion of work on this milestone?* +_Are there any notable capabilities / milestones do NOT we expect to be in place by the completion of work on this milestone?_ - [x] **Internationalization:** While there will be content delivered within this milestone that needs to be translated in the future, we do not expect to have a framework for managing translations set up by the time this milestone is delivered. - [x] **CMS:** While in the long-term we may want to support a Content Management Service (CMS) that allows non-technical users to update and manage copy for the website, we do not expect a CMS to be selected and implemented when we launch this site. ### Open questions + - [x] None ### Not doing + -*The following work will* not *be completed as part of this milestone:* +_The following work will_ not _be completed as part of this milestone:_ 1. **Translating site contents:** Translation of key documents will be covered in an upcoming milestone slotted for FY24 Q1 (Oct - Dec 2023) 2. **Legacy web analytics:** Updating the existing analytics recorded on legacy grants.gov in order to establish a baseline for comparing the site traffic for `beta.grants.gov` will happen in a later milestone @@ -150,20 +153,22 @@ Page on the public wiki. **Note:** This will likely change once we deliver [the ## Integrations ### Translations + -*Does this milestone involve delivering any content that needs translation?* +_Does this milestone involve delivering any content that needs translation?_ Yes, the site contents will need to be translated. -*If so, when will English-language content be locked? Then when will translation be started and completed?* +_If so, when will English-language content be locked? Then when will translation be started and completed?_ The initial process for translation is slotted for release sometime in FY24 Q1 (Oct - Dec 2023). ### Services going into PROD for the first time + -*This can include services going into PROD behind a feature flag that is not turned on.* +_This can include services going into PROD behind a feature flag that is not turned on._ - **Static Site:** This milestone represents the official launch of the static site - **beta.grants.gov Domain:** The static site is the first service to officially use the `beta.grants.gov` domain @@ -171,34 +176,38 @@ The initial process for translation is slotted for release sometime in FY24 Q1 ( - **Web Analytics:** This will most likely be the first service for which we are configuring web analytics ### Services being integrated in PROD for the first time + -*Are there multiple services that are being connected for the first time in PROD?* +_Are there multiple services that are being connected for the first time in PROD?_ - **Static Site + Feedback Form:** The feedback form should be accessible directly from the site, preferably embedded directly on the page - **Static Site + Web Analytics:** All of the public pages on the static site should be configured to track web analytics - **Static Site + Communications Platforms:** The static site should link to the relevant communication platforms that are available at the time of launch ### Data being shared publicly for the first time + -*Are there any fields being shared publicly that have never been shared in PROD before?* +_Are there any fields being shared publicly that have never been shared in PROD before?_ - No, the content of the static site in this milestone will be limited to general information about the Simpler Grants.gov project. It does not include exposing any production data from the new beta.grants.gov data model. ### Security considerations + -*Does this milestone expose any new attack vectors or expand the attack surface of the product?* +_Does this milestone expose any new attack vectors or expand the attack surface of the product?_ - **Deployment Services:** Automating our deployment process using a CI/CD platform exposes the deployment process as a potential attack vector if the deployment secrets/tokens are compromised or if malicious code through a supply chain attack. - **Form Submissions:** While the majority of the site content will be static, accepting user input through a feedback form does expose a potential attack vector. -*If so, how are we addressing these risks?* +_If so, how are we addressing these risks?_ - **Security Approval:** Before the official launch of the static site to the public, we will be reviewing our infrastructure and code security practices with the HHS team to ensure that they adhere to HHS standards. - **Developer Tools:** As part of the Developer Tools milestone, the team is setting up a series of tools that will enforce certain code quality standards and security checks. These include things like secrets management, code linting, dependency monitoring, etc. - **Form Submissions:** The implementation plan for form submissions will evaluate and consider common security practices for validating and sanitizing user input. Form submissions will also likely be stored in a system that is separate from the production database with grant data. + [lighthouse]: https://developer.chrome.com/en/docs/lighthouse/performance/performance-scoring/ diff --git a/frontend/src/constants/routes.ts b/frontend/src/constants/routes.ts index 505be8b4e..f470c3ee7 100644 --- a/frontend/src/constants/routes.ts +++ b/frontend/src/constants/routes.ts @@ -5,11 +5,11 @@ export const ExternalRoutes = { EMAIL_SIMPLERGRANTSGOV: "simplergrantsgov@hhs.gov", EMAIL_SUPPORT: "support@grants.gov", FOIA: "https://www.hhs.gov/foia/index.html", - GITHUB_REPO: "https://github.com/HHS/grants-equity", + GITHUB_REPO: "https://github.com/HHS/simpler-grants-gov", GITHUB_REPO_CONTRIBUTING: - "https://github.com/HHS/grants-equity/blob/main/CONTRIBUTING.md", + "https://github.com/HHS/simpler-grants-gov/blob/main/CONTRIBUTING.md", GITHUB_REPO_GOALS: - "https://github.com/HHS/grants-equity/blob/main/documentation/goals.md", + "https://github.com/HHS/simpler-grants-gov/blob/main/documentation/goals.md", GITHUB_REPO_ROADMAP: "https://github.com/orgs/HHS/projects/12/views/2", GRANTS_HOME: "https://www.grants.gov", GRANTS_NEWSLETTER: diff --git a/infra/README.md b/infra/README.md index e6a039d56..c83a298ee 100644 --- a/infra/README.md +++ b/infra/README.md @@ -1,4 +1,4 @@ -# Grants Equity Infrastructure +# Simpler Grants Infrastructure The infrastructure for this project is stored as Terraform files and hosted on Amazon Web Services. diff --git a/infra/accounts/grants-equity.315341936575.s3.tfbackend b/infra/accounts/grants-equity.315341936575.s3.tfbackend deleted file mode 100644 index 6dc5204a8..000000000 --- a/infra/accounts/grants-equity.315341936575.s3.tfbackend +++ /dev/null @@ -1,4 +0,0 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" -key = "infra/account.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" -region = "us-east-1" diff --git a/infra/accounts/simpler-grants-gov.315341936575.s3.tfbackend b/infra/accounts/simpler-grants-gov.315341936575.s3.tfbackend new file mode 100644 index 000000000..8f9218ef1 --- /dev/null +++ b/infra/accounts/simpler-grants-gov.315341936575.s3.tfbackend @@ -0,0 +1,4 @@ +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" +key = "infra/account.tfstate" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" +region = "us-east-1" diff --git a/infra/api/app-config/main.tf b/infra/api/app-config/main.tf index 6d819e9d3..69bb12af5 100644 --- a/infra/api/app-config/main.tf +++ b/infra/api/app-config/main.tf @@ -44,9 +44,9 @@ locals { # prod = "prod" # } account_names_by_environment = { - shared = "grants-equity" - dev = "grants-equity" - prod = "grants-equity" + shared = "simpler-grants-gov" + dev = "simpler-grants-gov" + prod = "simpler-grants-gov" } } diff --git a/infra/api/build-repository/.terraform.lock.hcl b/infra/api/build-repository/.terraform.lock.hcl index 43cfe95a2..0f42f0af3 100644 --- a/infra/api/build-repository/.terraform.lock.hcl +++ b/infra/api/build-repository/.terraform.lock.hcl @@ -20,3 +20,22 @@ provider "registry.terraform.io/hashicorp/aws" { "zh:f6a26ce77f7db1d50ce311e32902fd001fb365e5e45e47a9a5cd59d734c89cb6", ] } + +provider "registry.terraform.io/hashicorp/external" { + version = "2.3.1" + hashes = [ + "h1:gznGscVJ0USxy4CdihpjRKPsKvyGr/zqPvBoFLJTQDc=", + "zh:001e2886dc81fc98cf17cf34c0d53cb2dae1e869464792576e11b0f34ee92f54", + "zh:2eeac58dd75b1abdf91945ac4284c9ccb2bfb17fa9bdb5f5d408148ff553b3ee", + "zh:2fc39079ba61411a737df2908942e6970cb67ed2f4fb19090cd44ce2082903dd", + "zh:472a71c624952cff7aa98a7b967f6c7bb53153dbd2b8f356ceb286e6743bb4e2", + "zh:4cff06d31272aac8bc35e9b7faec42cf4554cbcbae1092eaab6ab7f643c215d9", + "zh:78d5eefdd9e494defcb3c68d282b8f96630502cac21d1ea161f53cfe9bb483b3", + "zh:7ed16ccd2049fa089616b98c0bd57219f407958f318f3c697843e2397ddf70df", + "zh:842696362c92bf2645eb85c739410fd51376be6c488733efae44f4ce688da50e", + "zh:8985129f2eccfd7f1841ce06f3bf2bbede6352ec9e9f926fbaa6b1a05313b326", + "zh:a5f0602d8ec991a5411ef42f872aa90f6347e93886ce67905c53cfea37278e05", + "zh:bf4ab82cbe5256dcef16949973bf6aa1a98c2c73a98d6a44ee7bc40809d002b8", + "zh:e70770be62aa70198fa899526d671643ff99eecf265bf1a50e798fc3480bd417", + ] +} diff --git a/infra/api/build-repository/shared.s3.tfbackend b/infra/api/build-repository/shared.s3.tfbackend index 8cdc7e100..094584a1b 100644 --- a/infra/api/build-repository/shared.s3.tfbackend +++ b/infra/api/build-repository/shared.s3.tfbackend @@ -1,4 +1,4 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" key = "infra/api/build-repository/shared.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" region = "us-east-1" diff --git a/infra/api/database/dev.s3.tfbackend b/infra/api/database/dev.s3.tfbackend index 15f0341eb..8f1a723b5 100644 --- a/infra/api/database/dev.s3.tfbackend +++ b/infra/api/database/dev.s3.tfbackend @@ -1,4 +1,4 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" key = "infra/api/database/dev.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" region = "us-east-1" diff --git a/infra/api/database/prod.s3.tfbackend b/infra/api/database/prod.s3.tfbackend index 189df729e..4629c3886 100644 --- a/infra/api/database/prod.s3.tfbackend +++ b/infra/api/database/prod.s3.tfbackend @@ -1,4 +1,4 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" key = "infra/api/database/prod.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" region = "us-east-1" diff --git a/infra/api/service/dev.s3.tfbackend b/infra/api/service/dev.s3.tfbackend index 594d3f6e0..6bd430c25 100644 --- a/infra/api/service/dev.s3.tfbackend +++ b/infra/api/service/dev.s3.tfbackend @@ -1,4 +1,4 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" key = "infra/api/service/dev.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" region = "us-east-1" diff --git a/infra/api/service/prod.s3.tfbackend b/infra/api/service/prod.s3.tfbackend index e93c9406c..7ec37c16c 100644 --- a/infra/api/service/prod.s3.tfbackend +++ b/infra/api/service/prod.s3.tfbackend @@ -1,4 +1,4 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" key = "infra/api/service/prod.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" region = "us-east-1" diff --git a/infra/frontend/app-config/main.tf b/infra/frontend/app-config/main.tf index ad64bc816..159a7d283 100644 --- a/infra/frontend/app-config/main.tf +++ b/infra/frontend/app-config/main.tf @@ -46,9 +46,9 @@ locals { # prod = "prod" # } account_names_by_environment = { - shared = "grants-equity" - dev = "grants-equity" - prod = "grants-equity" + shared = "simpler-grants-gov" + dev = "simpler-grants-gov" + prod = "simpler-grants-gov" } } diff --git a/infra/frontend/build-repository/.terraform.lock.hcl b/infra/frontend/build-repository/.terraform.lock.hcl index 43cfe95a2..0f42f0af3 100644 --- a/infra/frontend/build-repository/.terraform.lock.hcl +++ b/infra/frontend/build-repository/.terraform.lock.hcl @@ -20,3 +20,22 @@ provider "registry.terraform.io/hashicorp/aws" { "zh:f6a26ce77f7db1d50ce311e32902fd001fb365e5e45e47a9a5cd59d734c89cb6", ] } + +provider "registry.terraform.io/hashicorp/external" { + version = "2.3.1" + hashes = [ + "h1:gznGscVJ0USxy4CdihpjRKPsKvyGr/zqPvBoFLJTQDc=", + "zh:001e2886dc81fc98cf17cf34c0d53cb2dae1e869464792576e11b0f34ee92f54", + "zh:2eeac58dd75b1abdf91945ac4284c9ccb2bfb17fa9bdb5f5d408148ff553b3ee", + "zh:2fc39079ba61411a737df2908942e6970cb67ed2f4fb19090cd44ce2082903dd", + "zh:472a71c624952cff7aa98a7b967f6c7bb53153dbd2b8f356ceb286e6743bb4e2", + "zh:4cff06d31272aac8bc35e9b7faec42cf4554cbcbae1092eaab6ab7f643c215d9", + "zh:78d5eefdd9e494defcb3c68d282b8f96630502cac21d1ea161f53cfe9bb483b3", + "zh:7ed16ccd2049fa089616b98c0bd57219f407958f318f3c697843e2397ddf70df", + "zh:842696362c92bf2645eb85c739410fd51376be6c488733efae44f4ce688da50e", + "zh:8985129f2eccfd7f1841ce06f3bf2bbede6352ec9e9f926fbaa6b1a05313b326", + "zh:a5f0602d8ec991a5411ef42f872aa90f6347e93886ce67905c53cfea37278e05", + "zh:bf4ab82cbe5256dcef16949973bf6aa1a98c2c73a98d6a44ee7bc40809d002b8", + "zh:e70770be62aa70198fa899526d671643ff99eecf265bf1a50e798fc3480bd417", + ] +} diff --git a/infra/frontend/build-repository/shared.s3.tfbackend b/infra/frontend/build-repository/shared.s3.tfbackend index a952d5b0f..d08fdefb5 100644 --- a/infra/frontend/build-repository/shared.s3.tfbackend +++ b/infra/frontend/build-repository/shared.s3.tfbackend @@ -1,4 +1,4 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" key = "infra/frontend/build-repository/shared.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" region = "us-east-1" diff --git a/infra/frontend/service/dev.s3.tfbackend b/infra/frontend/service/dev.s3.tfbackend index 5de12b695..17e0579e6 100644 --- a/infra/frontend/service/dev.s3.tfbackend +++ b/infra/frontend/service/dev.s3.tfbackend @@ -1,4 +1,4 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" key = "infra/frontend/service/dev.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" region = "us-east-1" diff --git a/infra/frontend/service/prod.s3.tfbackend b/infra/frontend/service/prod.s3.tfbackend index f60be1c18..744b0c5a9 100644 --- a/infra/frontend/service/prod.s3.tfbackend +++ b/infra/frontend/service/prod.s3.tfbackend @@ -1,4 +1,4 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" key = "infra/frontend/service/prod.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" region = "us-east-1" diff --git a/infra/networks/default.s3.tfbackend b/infra/networks/default.s3.tfbackend index 175579e58..fdaf1fa01 100644 --- a/infra/networks/default.s3.tfbackend +++ b/infra/networks/default.s3.tfbackend @@ -1,4 +1,4 @@ -bucket = "grants-equity-315341936575-us-east-1-tf" +bucket = "simpler-grants-gov-315341936575-us-east-1-tf" key = "infra/networks/default.tfstate" -dynamodb_table = "grants-equity-315341936575-us-east-1-tf-state-locks" +dynamodb_table = "simpler-grants-gov-315341936575-us-east-1-tf-state-locks" region = "us-east-1" diff --git a/infra/project-config/main.tf b/infra/project-config/main.tf index e9db7d1e3..08755144e 100644 --- a/infra/project-config/main.tf +++ b/infra/project-config/main.tf @@ -1,13 +1,13 @@ locals { # Machine readable project name (lower case letters, dashes, and underscores) # This will be used in names of AWS resources - project_name = "grants-equity" + project_name = "simpler-grants-gov" # Project owner (e.g. navapbc). Used for tagging infra resources. owner = "navapbc" # URL of project source code repository - code_repository_url = "https://github.com/HHS/grants-equity" + code_repository_url = "https://github.com/HHS/simpler-grants-gov" # Default AWS region for project (e.g. us-east-1, us-east-2, us-west-1). # This is dependent on where your project is located (if regional)