Skip to content

refactor: use add and drop constraint actions - #356

Draft
Tomoscorbin wants to merge 1 commit into
feature/constraint-lifecycle-redesign-planfrom
feature/constraint-action-lifecycle
Draft

refactor: use add and drop constraint actions#356
Tomoscorbin wants to merge 1 commit into
feature/constraint-lifecycle-redesign-planfrom
feature/constraint-action-lifecycle

Conversation

@Tomoscorbin

@Tomoscorbin Tomoscorbin commented Aug 14, 2026

Copy link
Copy Markdown
Owner

Summary

  • rename primary- and foreign-key Set* actions and phases to Add*
  • carry desired constraints for additions and observed catalog occurrences for drops
  • give constraint actions operational identity through desired/catalog names, including the primary-key name rendered by CreateTable
  • require compiled plans to retain the exact source action objects

Why

Constraint values intentionally compare by relational definition, independent of lifecycle names. Executable actions still need to compare differently when they would render different SQL. Keeping that distinction in the action layer preserves structural constraint equality without losing operational identity.

Stack

Validation

  • uv run pytest -q — 1,268 passed, 78 deselected; 97.16% coverage
  • uv run mypy src
  • uv run ruff check .
  • uv run ruff format --check .
  • uv run lint-imports
  • uv run --group docs sphinx-build -W -b html docs /tmp/delta-engine-constraint-action-docs
  • git diff --check

Base automatically changed from feature/model-constraint-lifecycle to feature/constraint-lifecycle-redesign-plan August 14, 2026 12:47
@Tomoscorbin
Tomoscorbin force-pushed the feature/constraint-action-lifecycle branch from 8eea29e to 4e3b891 Compare August 14, 2026 12:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant