Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Epic: Initial end-to-end workbook code refactor #2670

Closed
7 tasks done
jadudm opened this issue Nov 1, 2023 · 0 comments
Closed
7 tasks done

Epic: Initial end-to-end workbook code refactor #2670

jadudm opened this issue Nov 1, 2023 · 0 comments
Assignees
Labels

Comments

@jadudm
Copy link
Contributor

jadudm commented Nov 1, 2023

At a glance

In order to migrate historical data
as a product owner
I want to know the process held the data to the same (or higher) standard as our intake.

The code: a brief and likely inaccurate history

Months ago, I developed a workbook generator. It began life in order to exercise our early JSON Schema validations. It helped find many logical errors, and drove a great deal of improvement in our intake.

It grew and evolved, serving in a one-off capacity for generating workbooks. As the API came online, I extended it to run end-to-end. Or, I discovered I could generate workbooks in memory, and feed them to the Django application. This rapidly became an end-to-end test: a set of workbooks could be generated, fed to the app, run through all of our validations (including cross-val), and then the data at time of input is compared with what is available via the API.

It is this code that we are basing our historical data migration on.

Approach

The initial refactoring will clone the existing code to another part of the tree, and then walk it forward.

  1. The code will always generate workbooks that validate end-to-end.
  2. Unit tests for critical/core functions will be developed as needed along the way.
  3. Cleanup/refactoring can and should happen as needed.
  4. No massive/architectural rewrites are part of this work.

At all points in the refactoring the code should continue to generate workbooks that validate.

Tasks

Preview Give feedback
  1. eng
    phildominguez-gsa sambodeme
  2. eng
    phildominguez-gsa sambodeme
  3. eng
    sambodeme

#2672 is broken out as its own epic for refactoring/improving this code.

When these steps are complete, the team should have a tool that can generate workbooks using the "messy" historical data loaded into our environments via Docker container. It does not yet work with new/"authoritative" Census data.

@jadudm jadudm converted this from a draft issue Nov 1, 2023
@jadudm jadudm changed the title Epic: Refactor end-to-end workbook code Epic: Initial end-to-end workbook code refactor Nov 1, 2023
@jadudm jadudm moved this from Next to Now in FAC Epic Board Nov 2, 2023
@jadudm jadudm added the eng label Nov 2, 2023
@github-project-automation github-project-automation bot moved this to Triage in FAC Nov 2, 2023
@danswick danswick removed this from FAC Nov 30, 2023
@danswick danswick moved this from Now to Done in FAC Epic Board Dec 11, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Archived in project
Development

No branches or pull requests

4 participants