usdigitalresponse / cpf-reporter

CPF Reporter application maintained by the USDR Grants program.
Apache License 2.0
0 stars 4 forks source link

Bug: flaky test 460 #476

Closed greg-adams closed 1 month ago

greg-adams commented 1 month ago

Ticket #460

Overview

github-actions[bot] commented 1 month ago

Terraform Summary

Step Result
๐Ÿ–Œ Terraform Format & Style โœ…
โš™๏ธ Terraform Initialization โœ…
๐Ÿค– Terraform Validation โœ…
๐Ÿ“– Terraform Plan โœ…

Hint: If "Terraform Format & Style" failed, run terraform fmt -recursive from the terraform/ directory and commit the results.

Output

Validation Output ``` Success! The configuration is valid. ```
Plan Summary | CHANGE | RESOURCE | |----------|-------------------------------------------------------------------------------------------------------------------------------| | add | `aws_s3_object.origin_dist_artifact["static/js/app.4f06d289.js"]` | | | `aws_s3_object.origin_dist_artifact["static/js/app.4f06d289.js.LICENSE.txt"]` | | update | `aws_ecs_service.console` | | | `aws_s3_object.origin_dist_artifact["200.html"]` | | | `aws_s3_object.origin_dist_artifact["build-manifest.json"]` | | | `aws_s3_object.origin_dist_artifact["chunk-references.json"]` | | | `aws_s3_object.origin_dist_artifact["index.html"]` | | | `module.lambda_function-cpfCreateArchive.aws_lambda_function.this[0]` | | | `module.lambda_function-cpfValidation.aws_lambda_function.this[0]` | | | `module.lambda_function-email-presigned-url.aws_lambda_function.this[0]` | | | `module.lambda_function-graphql.aws_lambda_function.this[0]` | | | `module.lambda_function-processValidationJson.aws_lambda_function.this[0]` | | | `module.lambda_function-subrecipientTreasuryReportGen.aws_lambda_function.this[0]` | | | `module.lambda_function-treasuryProjectFileGeneration.aws_lambda_function.this[0]` | | recreate | `aws_ecs_task_definition.console` | | | `aws_s3_object.lambda_artifact-graphql` | | | `aws_s3_object.lambda_artifact-processValidationJson` | | | `aws_s3_object.lambda_artifact-python` | | | `module.lambda_function-cpfCreateArchive.aws_lambda_permission.current_version_triggers["StepFunctionTrigger"]` | | | `module.lambda_function-cpfValidation.aws_lambda_permission.current_version_triggers["S3BucketNotification"]` | | | `module.lambda_function-email-presigned-url.aws_lambda_permission.current_version_triggers["StepFunctionTrigger"]` | | | `module.lambda_function-graphql.aws_lambda_permission.current_version_triggers["APIGateway"]` | | | `module.lambda_function-processValidationJson.aws_lambda_permission.current_version_triggers["S3BucketNotification"]` | | | `module.lambda_function-subrecipientTreasuryReportGen.aws_lambda_permission.current_version_triggers["StepFunctionTrigger"]` | | | `module.lambda_function-treasuryProjectFileGeneration.aws_lambda_permission.current_version_triggers["S3BucketNotification"]` | | | `module.lambda_function-treasuryProjectFileGeneration.aws_lambda_permission.current_version_triggers["StepFunctionTrigger"]` | | delete | `aws_s3_object.origin_dist_artifact["static/js/app.55bcd3e2.js"]` | | | `aws_s3_object.origin_dist_artifact["static/js/app.55bcd3e2.js.LICENSE.txt"]` |

Pusher: @greg-adams, Action: pull_request_target, Workflow: Continuous Integration

github-actions[bot] commented 1 month ago

QA Summary

See our documentation for tips on how to resolve failing QA checks.

QA Check Result
๐ŸŒ Web Tests โœ…
๐Ÿ”— API Tests โœ…
๐Ÿ Python Tests โœ…
๐Ÿ“ ESLint โœ…
๐Ÿงผ Ruff โœ…
๐Ÿงน TFLint โœ…

Test Coverage

Coverage report for api suite St|File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s --|---------------------------------------------|---------|----------|---------|---------|--------------------------------------------------------------------------- ๐Ÿ”ด|All files | 49.84 | 33.47 | 56.19 | 50.31 | ๐Ÿ”ด| src| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [server.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/server.ts)| 0 | 100 | 0 | 0 |[6-13](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/server.ts#L6-L13) ๐ŸŸข| src/directives/requireAuth| 100 | 100 | 100 | 100 | ๐ŸŸข|  [requireAuth.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/directives/requireAuth/requireAuth.ts)| 100 | 100 | 100 | 100 | ๐ŸŸก| src/directives/skipAuth| 50 | 100 | 0 | 50 | ๐ŸŸก|  [skipAuth.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/directives/skipAuth/skipAuth.ts)| 50 | 100 | 0 | 50 |[13](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/directives/skipAuth/skipAuth.ts#L13) ๐Ÿ”ด| src/functions| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [graphql.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/graphql.ts)| 0 | 100 | 0 | 0 |[15-27](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/graphql.ts#L15-L27) ๐Ÿ”ด| src/functions/processValidationJson| 38.55 | 50 | 44.44 | 37.8 | ๐ŸŸข|  [processValidationJson.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.scenarios.ts)| 100 | 100 | 100 | 100 | ๐Ÿ”ด|  [processValidationJson.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts)| 37.8 | 50 | 44.44 | 37.03 |[59-98](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L59-L98),[118-119](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L118-L119),[157-165](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L157-L165),[177-178](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L177-L178),[193-196](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L193-L196),[201-242](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L201-L242),[255-256](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L255-L256),[270-309](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L270-L309),[321-324](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L321-L324),[332](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/functions/processValidationJson/processValidationJson.ts#L332) ๐Ÿ”ด| src/graphql| 0 | 100 | 100 | 0 | ๐Ÿ”ด|  [agencies.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/agencies.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/agencies.sdl.ts#L1) ๐Ÿ”ด|  [expenditureCategories.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/expenditureCategories.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/expenditureCategories.sdl.ts#L1) ๐Ÿ”ด|  [inputTemplates.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/inputTemplates.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/inputTemplates.sdl.ts#L1) ๐Ÿ”ด|  [organizations.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/organizations.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/organizations.sdl.ts#L1) ๐Ÿ”ด|  [outputTemplates.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/outputTemplates.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/outputTemplates.sdl.ts#L1) ๐Ÿ”ด|  [projects.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/projects.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/projects.sdl.ts#L1) ๐Ÿ”ด|  [reportingPeriodCertifications.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/reportingPeriodCertifications.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/reportingPeriodCertifications.sdl.ts#L1) ๐Ÿ”ด|  [reportingPeriods.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/reportingPeriods.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/reportingPeriods.sdl.ts#L1) ๐Ÿ”ด|  [subrecipientUploads.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/subrecipientUploads.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/subrecipientUploads.sdl.ts#L1) ๐Ÿ”ด|  [subrecipients.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/subrecipients.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/subrecipients.sdl.ts#L1) ๐Ÿ”ด|  [uploadValidations.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/uploadValidations.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/uploadValidations.sdl.ts#L1) ๐Ÿ”ด|  [uploads.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/uploads.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/uploads.sdl.ts#L1) ๐Ÿ”ด|  [users.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/users.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/users.sdl.ts#L1) ๐Ÿ”ด|  [validationRuleses.sdl.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/validationRuleses.sdl.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/graphql/validationRuleses.sdl.ts#L1) ๐Ÿ”ด| src/lib| 13.12 | 9.57 | 11.7 | 13.43 | ๐ŸŸก|  [auth.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts)| 62.96 | 48.48 | 57.14 | 65.38 |[60-61](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L60-L61),[77-78](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L77-L78),[84-85](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L84-L85),[101-102](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L101-L102),[124](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L124),[131](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L131),[134](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L134),[139-146](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L139-L146),[170](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L170),[174](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/auth.ts#L174) ๐Ÿ”ด|  [aws.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/aws.ts)| 25.42 | 18.75 | 25 | 25.42 |[53-58](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/aws.ts#L53-L58),[74-97](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/aws.ts#L74-L97),[121-123](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/aws.ts#L121-L123),[150-171](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/aws.ts#L150-L171),[186-272](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/aws.ts#L186-L272) ๐ŸŸข|  [constants.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/constants.ts)| 100 | 100 | 100 | 100 | ๐Ÿ”ด|  [db.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/db.ts)| 45.45 | 50 | 50 | 45.45 |[15-35](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/db.ts#L15-L35),[41](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/db.ts#L41),[43](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/db.ts#L43),[50](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/db.ts#L50) ๐Ÿ”ด|  [ec-codes.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/ec-codes.ts)| 0 | 100 | 100 | 0 |[1](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/ec-codes.ts#L1) ๐ŸŸข|  [logger.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/logger.ts)| 100 | 100 | 100 | 100 | ๐Ÿ”ด|  [persist-upload.js](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/persist-upload.js)| 0 | 0 | 0 | 0 |[16-295](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/persist-upload.js#L16-L295) ๐Ÿ”ด|  [preconditions.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/preconditions.ts)| 0 | 0 | 0 | 0 |[2-3](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/preconditions.ts#L2-L3) ๐Ÿ”ด|  [records.js](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/records.js)| 0 | 0 | 0 | 0 |[12-214](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/records.js#L12-L214) ๐Ÿ”ด|  [templateRules.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/templateRules.ts)| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [tracer.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/tracer.ts)| 0 | 100 | 100 | 0 |[5-14](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/tracer.ts#L5-L14) ๐Ÿ”ด|  [validate-upload.js](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/validate-upload.js)| 0 | 0 | 0 | 0 |[18-790](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/validate-upload.js#L18-L790) ๐ŸŸข|  [validation-error.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/validation-error.ts)| 83.33 | 100 | 50 | 83.33 |[22](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/validation-error.ts#L22) ๐Ÿ”ด|  [validation-rules.js](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/validation-rules.js)| 0 | 0 | 0 | 0 |[6-194](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/lib/validation-rules.js#L6-L194) ๐ŸŸก| src/services/agencies| 67.34 | 50 | 80 | 67.34 | ๐ŸŸข|  [agencies.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/agencies/agencies.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸก|  [agencies.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/agencies/agencies.ts)| 65.21 | 50 | 75 | 65.21 |[40-51](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/agencies/agencies.ts#L40-L51),[60-64](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/agencies/agencies.ts#L60-L64),[97-98](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/agencies/agencies.ts#L97-L98),[104](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/agencies/agencies.ts#L104),[113-121](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/agencies/agencies.ts#L113-L121) ๐ŸŸก| src/services/expenditureCategories| 78.57 | 66.66 | 88.88 | 78.57 | ๐ŸŸข|  [expenditureCategories.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/expenditureCategories/expenditureCategories.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸก|  [expenditureCategories.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/expenditureCategories/expenditureCategories.ts)| 77.77 | 66.66 | 88.88 | 77.77 |[30-34](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/expenditureCategories/expenditureCategories.ts#L30-L34),[49-52](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/expenditureCategories/expenditureCategories.ts#L49-L52),[60](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/expenditureCategories/expenditureCategories.ts#L60),[91](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/expenditureCategories/expenditureCategories.ts#L91) ๐ŸŸก| src/services/inputTemplates| 77.77 | 66.66 | 85.71 | 77.77 | ๐ŸŸข|  [inputTemplates.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/inputTemplates/inputTemplates.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸก|  [inputTemplates.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/inputTemplates/inputTemplates.ts)| 76.92 | 66.66 | 85.71 | 76.92 |[25-29](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/inputTemplates/inputTemplates.ts#L25-L29),[39-40](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/inputTemplates/inputTemplates.ts#L39-L40),[50](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/inputTemplates/inputTemplates.ts#L50),[85](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/inputTemplates/inputTemplates.ts#L85) ๐ŸŸก| src/services/organizations| 75 | 90.9 | 50 | 75 | ๐ŸŸข|  [organizations.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/organizations/organizations.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸก|  [organizations.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/organizations/organizations.ts)| 73.97 | 90.9 | 44.44 | 73.97 |[34-35](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/organizations/organizations.ts#L34-L35),[53-57](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/organizations/organizations.ts#L53-L57),[92](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/organizations/organizations.ts#L92),[164-194](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/organizations/organizations.ts#L164-L194),[202](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/organizations/organizations.ts#L202),[220-247](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/organizations/organizations.ts#L220-L247) ๐ŸŸข| src/services/outputTemplates| 82.85 | 66.66 | 85.71 | 82.85 | ๐ŸŸข|  [outputTemplates.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/outputTemplates/outputTemplates.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸข|  [outputTemplates.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/outputTemplates/outputTemplates.ts)| 82.35 | 66.66 | 85.71 | 82.35 |[26-30](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/outputTemplates/outputTemplates.ts#L26-L30),[40-41](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/outputTemplates/outputTemplates.ts#L40-L41),[51](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/outputTemplates/outputTemplates.ts#L51),[114](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/outputTemplates/outputTemplates.ts#L114) ๐ŸŸก| src/services/passage| 74.07 | 62.5 | 100 | 74.07 | ๐ŸŸก|  [passage.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/passage/passage.ts)| 74.07 | 62.5 | 100 | 74.07 |[18-19](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/passage/passage.ts#L18-L19),[65-76](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/passage/passage.ts#L65-L76) ๐ŸŸก| src/services/projects| 80 | 100 | 62.5 | 80 | ๐ŸŸข|  [projects.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/projects/projects.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸก|  [projects.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/projects/projects.ts)| 78.57 | 100 | 62.5 | 78.57 |[45-51](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/projects/projects.ts#L45-L51) ๐ŸŸข| src/services/reportingPeriodCertifications| 100 | 100 | 100 | 100 | ๐ŸŸข|  [reportingPeriodCertifications.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriodCertifications/reportingPeriodCertifications.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸข|  [reportingPeriodCertifications.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriodCertifications/reportingPeriodCertifications.ts)| 100 | 100 | 100 | 100 | ๐ŸŸก| src/services/reportingPeriods| 70.58 | 60 | 57.89 | 71.64 | ๐ŸŸข|  [reportingPeriods.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸก|  [reportingPeriods.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts)| 68.75 | 60 | 50 | 69.84 |[15-27](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts#L15-L27),[44-48](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts#L44-L48),[58-59](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts#L58-L59),[74-77](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts#L74-L77),[93](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts#L93),[116](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts#L116),[124](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts#L124),[165](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts#L165),[188-209](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/reportingPeriods/reportingPeriods.ts#L188-L209) ๐ŸŸข| src/services/subrecipientUploads| 88.88 | 83.33 | 85.71 | 88.88 | ๐ŸŸข|  [subrecipientUploads.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/subrecipientUploads/subrecipientUploads.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸข|  [subrecipientUploads.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/subrecipientUploads/subrecipientUploads.ts)| 86.36 | 83.33 | 80 | 86.36 |[64](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/subrecipientUploads/subrecipientUploads.ts#L64),[94-99](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/subrecipientUploads/subrecipientUploads.ts#L94-L99) ๐ŸŸข| src/services/subrecipients| 92.85 | 100 | 88.88 | 92.85 | ๐ŸŸข|  [subrecipients.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/subrecipients/subrecipients.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸข|  [subrecipients.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/subrecipients/subrecipients.ts)| 90 | 100 | 81.81 | 90 |[53-58](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/subrecipients/subrecipients.ts#L53-L58) ๐ŸŸก| src/services/uploadValidations| 57.14 | 100 | 14.28 | 57.14 | ๐ŸŸข|  [uploadValidations.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploadValidations/uploadValidations.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸก|  [uploadValidations.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploadValidations/uploadValidations.ts)| 53.84 | 100 | 14.28 | 53.84 |[10](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploadValidations/uploadValidations.ts#L10),[16](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploadValidations/uploadValidations.ts#L16),[30](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploadValidations/uploadValidations.ts#L30),[38](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploadValidations/uploadValidations.ts#L38),[45-48](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploadValidations/uploadValidations.ts#L45-L48) ๐ŸŸข| src/services/uploads| 91.5 | 71.42 | 88.88 | 91.5 | ๐ŸŸข|  [uploads.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploads/uploads.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸข|  [uploads.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploads/uploads.ts)| 88.75 | 71.42 | 76.19 | 88.75 |[37](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploads/uploads.ts#L37),[104](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploads/uploads.ts#L104),[132-146](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploads/uploads.ts#L132-L146),[264-268](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/uploads/uploads.ts#L264-L268) ๐ŸŸข| src/services/users| 85.61 | 82 | 88.88 | 85.61 | ๐ŸŸข|  [users.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸข|  [users.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts)| 84.61 | 82 | 84.21 | 84.61 |[220](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L220),[237](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L237),[253](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L253),[275-277](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L275-L277),[286-290](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L286-L290),[308-309](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L308-L309),[323-326](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L323-L326),[344-346](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L344-L346),[354-355](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L354-L355),[360](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L360),[369-375](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/users/users.ts#L369-L375) ๐ŸŸข| src/services/validationRuleses| 85.71 | 100 | 71.42 | 85.71 | ๐ŸŸข|  [validationRuleses.scenarios.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/validationRuleses/validationRuleses.scenarios.ts)| 100 | 100 | 100 | 100 | ๐ŸŸข|  [validationRuleses.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/validationRuleses/validationRuleses.ts)| 84.61 | 100 | 71.42 | 84.61 |[43-48](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/api/src/src/services/validationRuleses/validationRuleses.ts#L43-L48)
Coverage report for web suite St|File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s --|---------------------------------------------------------------------|---------|----------|---------|---------|--------------------------- ๐Ÿ”ด|All files | 17.58 | 22.79 | 14.97 | 17.26 | ๐ŸŸข| api/src/lib| 100 | 100 | 100 | 100 | ๐ŸŸข|  [constants.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/api/src/lib/constants.ts)| 100 | 100 | 100 | 100 | ๐Ÿ”ด| web/src| 28.57 | 18.75 | 66.66 | 28.57 | ๐Ÿ”ด|  [App.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/App.tsx)| 0 | 0 | 0 | 0 |[3-36](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/App.tsx#L3-L36) ๐ŸŸข|  [Routes.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/Routes.tsx)| 100 | 100 | 100 | 100 | ๐ŸŸก|  [auth.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/auth.ts)| 50 | 50 | 100 | 50 |[19-24](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/auth.ts#L19-L24) ๐Ÿ”ด|  [entry.client.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/entry.client.tsx)| 0 | 0 | 100 | 0 |[10-22](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/entry.client.tsx#L10-L22) ๐Ÿ”ด| web/src/auth| 7.14 | 0 | 4.16 | 7.14 | ๐Ÿ”ด|  [localAuth.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/auth/localAuth.ts)| 9.09 | 0 | 8.33 | 9.09 |[39-68](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/auth/localAuth.ts#L39-L68),[76-80](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/auth/localAuth.ts#L76-L80) ๐Ÿ”ด|  [passageAuth.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/auth/passageAuth.ts)| 5 | 0 | 0 | 5 |[22-25](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/auth/passageAuth.ts#L22-L25),[31-60](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/auth/passageAuth.ts#L31-L60) ๐Ÿ”ด| web/src/components/Agency/Agencies| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [Agencies.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/Agencies/Agencies.tsx)| 0 | 100 | 0 | 0 |[9-21](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/Agencies/Agencies.tsx#L9-L21) ๐Ÿ”ด| web/src/components/Agency/AgenciesCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [AgenciesCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/AgenciesCell/AgenciesCell.tsx)| 0 | 100 | 0 | 0 |[8-39](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/AgenciesCell/AgenciesCell.tsx#L8-L39) ๐Ÿ”ด| web/src/components/Agency/Agency| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [Agency.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/Agency/Agency.tsx)| 0 | 0 | 0 | 0 |[10-78](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/Agency/Agency.tsx#L10-L78) ๐Ÿ”ด| web/src/components/Agency/AgencyCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [AgencyCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/AgencyCell/AgencyCell.tsx)| 0 | 100 | 0 | 0 |[7-27](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/AgencyCell/AgencyCell.tsx#L7-L27) ๐Ÿ”ด| web/src/components/Agency/AgencyForm| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [AgencyForm.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/AgencyForm/AgencyForm.tsx)| 0 | 0 | 0 | 0 |[25-45](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/AgencyForm/AgencyForm.tsx#L25-L45) ๐Ÿ”ด| web/src/components/Agency/EditAgencyCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [EditAgencyCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/EditAgencyCell/EditAgencyCell.tsx)| 0 | 100 | 0 | 0 |[10-59](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/EditAgencyCell/EditAgencyCell.tsx#L10-L59) ๐Ÿ”ด| web/src/components/Agency/NewAgency| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [NewAgency.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/NewAgency/NewAgency.tsx)| 0 | 100 | 0 | 0 |[9-35](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Agency/NewAgency/NewAgency.tsx#L9-L35) ๐ŸŸข| web/src/components/Navigation| 100 | 60 | 100 | 100 | ๐ŸŸข|  [Navigation.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Navigation/Navigation.tsx)| 100 | 60 | 100 | 100 |[24-68](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Navigation/Navigation.tsx#L24-L68) ๐Ÿ”ด| web/src/components/Organization/EditOrganizationCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [EditOrganizationCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/EditOrganizationCell/EditOrganizationCell.tsx)| 0 | 100 | 0 | 0 |[13-64](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/EditOrganizationCell/EditOrganizationCell.tsx#L13-L64) ๐Ÿ”ด| web/src/components/Organization/EditOrganizationForm| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [EditOrganizationForm.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/EditOrganizationForm/EditOrganizationForm.tsx)| 0 | 0 | 0 | 0 |[27-41](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/EditOrganizationForm/EditOrganizationForm.tsx#L27-L41) ๐Ÿ”ด| web/src/components/Organization/NewOrganization| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [NewOrganization.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/NewOrganization/NewOrganization.tsx)| 0 | 100 | 0 | 0 |[9-37](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/NewOrganization/NewOrganization.tsx#L9-L37) ๐Ÿ”ด| web/src/components/Organization/NewOrganizationForm| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [NewOrganizationForm.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/NewOrganizationForm/NewOrganizationForm.tsx)| 0 | 0 | 0 | 0 |[25-54](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/NewOrganizationForm/NewOrganizationForm.tsx#L25-L54) ๐Ÿ”ด| web/src/components/Organization/Organization| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [Organization.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/Organization/Organization.tsx)| 0 | 0 | 0 | 0 |[10-70](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/Organization/Organization.tsx#L10-L70) ๐Ÿ”ด| web/src/components/Organization/OrganizationCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [OrganizationCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationCell/OrganizationCell.tsx)| 0 | 100 | 0 | 0 |[7-28](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationCell/OrganizationCell.tsx#L7-L28) ๐Ÿ”ด| web/src/components/Organization/OrganizationPickListsCell| 40 | 0 | 27.27 | 36.36 | ๐ŸŸก|  [OrganizationPickListsCell.mock.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationPickListsCell/OrganizationPickListsCell.mock.ts)| 50 | 100 | 0 | 100 | ๐Ÿ”ด|  [OrganizationPickListsCell.stories.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationPickListsCell/OrganizationPickListsCell.stories.tsx)| 0 | 0 | 0 | 0 |[6-32](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationPickListsCell/OrganizationPickListsCell.stories.tsx#L6-L32) ๐ŸŸก|  [OrganizationPickListsCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationPickListsCell/OrganizationPickListsCell.tsx)| 64.28 | 0 | 50 | 58.33 |[14-16](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationPickListsCell/OrganizationPickListsCell.tsx#L14-L16),[50-76](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationPickListsCell/OrganizationPickListsCell.tsx#L50-L76) ๐Ÿ”ด| web/src/components/Organization/Organizations| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [Organizations.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/Organizations/Organizations.tsx)| 0 | 100 | 0 | 0 |[9-21](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/Organizations/Organizations.tsx#L9-L21) ๐Ÿ”ด| web/src/components/Organization/OrganizationsCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [OrganizationsCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationsCell/OrganizationsCell.tsx)| 0 | 100 | 0 | 0 |[8-37](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Organization/OrganizationsCell/OrganizationsCell.tsx#L8-L37) ๐Ÿ”ด| web/src/components/OutputTemplate/EditOutputTemplateCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [EditOutputTemplateCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/EditOutputTemplateCell/EditOutputTemplateCell.tsx)| 0 | 100 | 0 | 0 |[18-81](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/EditOutputTemplateCell/EditOutputTemplateCell.tsx#L18-L81) ๐Ÿ”ด| web/src/components/OutputTemplate/NewOutputTemplate| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [NewOutputTemplate.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/NewOutputTemplate/NewOutputTemplate.tsx)| 0 | 0 | 0 | 0 |[17-126](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/NewOutputTemplate/NewOutputTemplate.tsx#L17-L126) ๐Ÿ”ด| web/src/components/OutputTemplate/OutputTemplate| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [OutputTemplate.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplate/OutputTemplate.tsx)| 0 | 0 | 0 | 0 |[17-97](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplate/OutputTemplate.tsx#L17-L97) ๐Ÿ”ด| web/src/components/OutputTemplate/OutputTemplateCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [OutputTemplateCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplateCell/OutputTemplateCell.tsx)| 0 | 100 | 0 | 0 |[17-47](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplateCell/OutputTemplateCell.tsx#L17-L47) ๐Ÿ”ด| web/src/components/OutputTemplate/OutputTemplateForm| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [OutputTemplateForm.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplateForm/OutputTemplateForm.tsx)| 0 | 0 | 0 | 0 |[18-63](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplateForm/OutputTemplateForm.tsx#L18-L63) ๐Ÿ”ด| web/src/components/OutputTemplate/OutputTemplates| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [OutputTemplates.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplates/OutputTemplates.tsx)| 0 | 0 | 0 | 0 |[18-94](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplates/OutputTemplates.tsx#L18-L94) ๐Ÿ”ด| web/src/components/OutputTemplate/OutputTemplatesCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [OutputTemplatesCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplatesCell/OutputTemplatesCell.tsx)| 0 | 100 | 0 | 0 |[18-52](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/OutputTemplate/OutputTemplatesCell/OutputTemplatesCell.tsx#L18-L52) ๐Ÿ”ด| web/src/components/ReportingPeriod/EditReportingPeriodCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [EditReportingPeriodCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/EditReportingPeriodCell/EditReportingPeriodCell.tsx)| 0 | 100 | 0 | 0 |[13-74](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/EditReportingPeriodCell/EditReportingPeriodCell.tsx#L13-L74) ๐Ÿ”ด| web/src/components/ReportingPeriod/NewReportingPeriod| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [NewReportingPeriod.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/NewReportingPeriod/NewReportingPeriod.tsx)| 0 | 100 | 0 | 0 |[9-35](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/NewReportingPeriod/NewReportingPeriod.tsx#L9-L35) ๐Ÿ”ด| web/src/components/ReportingPeriod/ReportingPeriod| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [ReportingPeriod.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriod/ReportingPeriod.tsx)| 0 | 0 | 0 | 0 |[12-101](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriod/ReportingPeriod.tsx#L12-L101) ๐Ÿ”ด| web/src/components/ReportingPeriod/ReportingPeriodCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [ReportingPeriodCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriodCell/ReportingPeriodCell.tsx)| 0 | 100 | 0 | 0 |[7-33](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriodCell/ReportingPeriodCell.tsx#L7-L33) ๐Ÿ”ด| web/src/components/ReportingPeriod/ReportingPeriodForm| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [ReportingPeriodForm.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriodForm/ReportingPeriodForm.tsx)| 0 | 0 | 0 | 0 |[18-43](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriodForm/ReportingPeriodForm.tsx#L18-L43) ๐ŸŸก| web/src/components/ReportingPeriod/ReportingPeriods| 71.42 | 38.46 | 55.55 | 71.42 | ๐ŸŸก|  [ReportingPeriods.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriods/ReportingPeriods.tsx)| 67.74 | 44.44 | 41.66 | 67.74 |[47-52](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriods/ReportingPeriods.tsx#L47-L52),[59-60](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriods/ReportingPeriods.tsx#L59-L60),[66](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriods/ReportingPeriods.tsx#L66),[81](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriods/ReportingPeriods.tsx#L81),[116-133](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriods/ReportingPeriods.tsx#L116-L133) ๐ŸŸข|  [columns.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriods/columns.tsx)| 81.81 | 25 | 83.33 | 81.81 |[36-40](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriods/columns.tsx#L36-L40) ๐ŸŸก| web/src/components/ReportingPeriod/ReportingPeriodsCell| 55 | 0 | 55.55 | 47.05 | ๐ŸŸข|  [ReportingPeriodsCell.mock.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriodsCell/ReportingPeriodsCell.mock.ts)| 100 | 100 | 100 | 100 | ๐Ÿ”ด|  [ReportingPeriodsCell.stories.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriodsCell/ReportingPeriodsCell.stories.tsx)| 0 | 0 | 0 | 0 |[6-32](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriodsCell/ReportingPeriodsCell.stories.tsx#L6-L32) ๐ŸŸข|  [ReportingPeriodsCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/ReportingPeriod/ReportingPeriodsCell/ReportingPeriodsCell.tsx)| 100 | 100 | 100 | 100 | ๐Ÿ”ด| web/src/components/Subrecipient/SubrecipientTableUploadLinksDisplay| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [SubrecipientTableUploadLinksDisplay.stories.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/SubrecipientTableUploadLinksDisplay/SubrecipientTableUploadLinksDisplay.stories.tsx)| 0 | 100 | 100 | 0 |[5-82](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/SubrecipientTableUploadLinksDisplay/SubrecipientTableUploadLinksDisplay.stories.tsx#L5-L82) ๐Ÿ”ด|  [SubrecipientTableUploadLinksDisplay.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/SubrecipientTableUploadLinksDisplay/SubrecipientTableUploadLinksDisplay.tsx)| 0 | 0 | 0 | 0 |[14-42](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/SubrecipientTableUploadLinksDisplay/SubrecipientTableUploadLinksDisplay.tsx#L14-L42) ๐Ÿ”ด| web/src/components/Subrecipient/Subrecipients| 0 | 0 | 0 | 0 | ๐Ÿ”ด|  [Subrecipients.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/Subrecipients/Subrecipients.tsx)| 0 | 100 | 0 | 0 |[5-8](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/Subrecipients/Subrecipients.tsx#L5-L8) ๐Ÿ”ด|  [columns.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/Subrecipients/columns.tsx)| 0 | 0 | 0 | 0 |[7-93](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/Subrecipients/columns.tsx#L7-L93) ๐Ÿ”ด| web/src/components/Subrecipient/SubrecipientsCell| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [SubrecipientsCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/SubrecipientsCell/SubrecipientsCell.tsx)| 0 | 100 | 0 | 0 |[7-60](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/Subrecipient/SubrecipientsCell/SubrecipientsCell.tsx#L7-L60) ๐ŸŸข| web/src/components/TableBuilder| 88.88 | 88.88 | 77.77 | 88.57 | ๐ŸŸก|  [DebouncedInput.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/DebouncedInput.tsx)| 80 | 100 | 66.66 | 77.77 |[21](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/DebouncedInput.tsx#L21),[32](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/DebouncedInput.tsx#L32) ๐ŸŸก|  [Filter.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/Filter.tsx)| 75 | 100 | 50 | 75 |[10](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/Filter.tsx#L10) ๐ŸŸข|  [TableBuilder.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/TableBuilder.tsx)| 87.5 | 66.66 | 75 | 87.5 |[40](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/TableBuilder.tsx#L40) ๐ŸŸข|  [TableHeader.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/TableHeader.tsx)| 100 | 91.66 | 100 | 100 |[13](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/TableHeader.tsx#L13) ๐ŸŸข|  [TableRow.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TableBuilder/TableRow.tsx)| 100 | 100 | 100 | 100 | ๐ŸŸก| web/src/components/TemplateUploadReportingPeriodCell| 55 | 0 | 55.55 | 47.05 | ๐ŸŸข|  [TemplateUploadReportingPeriodCell.mock.ts](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TemplateUploadReportingPeriodCell/TemplateUploadReportingPeriodCell.mock.ts)| 100 | 100 | 100 | 100 | ๐Ÿ”ด|  [TemplateUploadReportingPeriodCell.stories.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TemplateUploadReportingPeriodCell/TemplateUploadReportingPeriodCell.stories.tsx)| 0 | 0 | 0 | 0 |[11-37](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TemplateUploadReportingPeriodCell/TemplateUploadReportingPeriodCell.stories.tsx#L11-L37) ๐ŸŸข|  [TemplateUploadReportingPeriodCell.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TemplateUploadReportingPeriodCell/TemplateUploadReportingPeriodCell.tsx)| 100 | 100 | 100 | 100 | ๐Ÿ”ด| web/src/components/TreasuryGeneration/DownloadTreasuryFiles| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [DownloadTreasuryFiles.tsx](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TreasuryGeneration/DownloadTreasuryFiles/DownloadTreasuryFiles.tsx)| 0 | 100 | 0 | 0 |[6-30](https://github.com/usdigitalresponse/cpf-reporter/blob/8a097359683bc6409c4d499b4e7f61627f4f91d0/web/src/components/TreasuryGeneration/DownloadTreasuryFiles/DownloadTreasuryFiles.tsx#L6-L30) ๐Ÿ”ด| web/src/components/TreasuryGeneration/NewTreasuryGeneration| 0 | 100 | 0 | 0 | ๐Ÿ”ด|  [NewTreasuryGeneration.tsx](https://github.com/usdigitalrespo...*[Comment body truncated]*