What to build
A one-time script copies custom yields and saved calculations from Neon into Firestore, following ADRs 0001 and 0004 in #122. It runs after the old API is read-only (#130).
- Accounts: the script works from a written list that maps each Neon account holding data to its Firebase user id, checked by hand; there are about two accounts. It stops if an account with data is missing from the list, appears twice, or two accounts map to one Firebase user.
- Yield values: the dry run lists any yield that is not above 0 and up to 100, such as the zeros the old form allowed. The owner fixes those in the old app before the freeze, and the copy refuses to run while any remain.
- Starting form: Neon custom yields record only the finished product, so the copy leaves the starting form blank for the owner to fill in.
- Shared yields: a yield that was already shared becomes approved, with a public copy, only if its owner has agreed to CC BY 4.0 and its starting form is filled in. Every other yield stays private.
This is HITL because it runs against production data, and the owner fills in the account list and gives the CC BY consent.
Acceptance criteria
Blocked by
What to build
A one-time script copies custom yields and saved calculations from Neon into Firestore, following ADRs 0001 and 0004 in #122. It runs after the old API is read-only (#130).
This is HITL because it runs against production data, and the owner fills in the account list and gives the CC BY consent.
Acceptance criteria
Blocked by