Repository navigation
Conversation
…n ADR The review of #1193 kept reopening the same question: whether a forced backfill pass may resume without force. The rule was being worked out per run and per command. This records the vocabulary agreed for the follow-up design in #1217 (column migration, direction, twin, backfill pass, run, obligation, waiver, abort) and the decision that a forced pass is an obligation on the column migration, enforced by @cipherstash/migrate for every caller, CLI or embedded worker. Refs #1217
|
Contributor
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
Comment |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@cipherstash/migratemoves an existing database column between plaintext and encrypted form, tracking each step in acs_migrationstable so an interrupted move can resume. The review of #1193 (the reverse, decrypt direction) kept reopening one question: may an interrupted--forcebackfill continue without--force? The answer was being worked out separately in each command. This PR writes down the shared vocabulary and the decision agreed for the follow-up design in #1217, so that future PRs argue from the same terms.Changes
languages/typescript/packages/migrate/CONTEXT.mddefines column migration, direction, source and target column, twin, phase, dual-writing, abort, rollout, backfill pass, run, forced pass, obligation and waiver. Each entry lists the words to avoid.languages/typescript/packages/migrate/docs/adr/0001-forced-pass-is-an-obligation.md. A forced pass is an obligation recorded on the column migration, and@cipherstash/migrateenforces it for every caller. While the obligation is open, every run is forced. Only a completed forced pass or, in the up-front reverse case, a recorded waiver closes it. At most one column migration is open per column pair.CONTEXT-MAP.mdlists the new Migrate context.Verification
Documentation only. The new files are outside the package's
fileslist, so nothing reaches the npm tarball and no changeset is needed.Related
Refs #1217, #1193
Review notes
Some terms (reverse direction, waiver) describe behaviour that arrives with #1193 and #1217, so this is best merged after #1193.