Skip to content

test(task-31-b2): lock description-free merge compat - #1944

Merged
earayu merged 1 commit into
mainfrom
huangzhangshu/task-31-b2-tests
Apr 30, 2026
Merged

test(task-31-b2): lock description-free merge compat#1944
earayu merged 1 commit into
mainfrom
huangzhangshu/task-31-b2-tests

Conversation

@earayu

@earayu earayu commented Apr 30, 2026

Copy link
Copy Markdown
Collaborator

scope

Task #31 Phase B2: add cross-backend compatibility coverage for LineageEntityMerger.merge_entities_apply_description_free() in tests/integration/compat/test_lineage_graph_compat.py.

This pins the task #31 § 3.1.4 / § 5.2.b apply contract over the real LineageGraphStore backends (PostgreSQL / Neo4j / Nebula via the existing compat fixture):

  • source lineage members re-anchor under the target
  • source rows are deleted from L1
  • stale source descriptions do not leak into target description parts
  • no __curation_merge__ sentinel is written
  • LLM / Compactor / vector collaborators are fail-fast and must not be called
  • replay after sources are already consumed is idempotent
  • alias-layer failure before store writes leaves graph rows unchanged

validation

Local no-backend validation:

  • uv run --extra test pytest tests/integration/compat/test_lineage_graph_compat.py --collect-only -q → 40 tests collected
  • uv run --extra test pytest tests/integration/compat/test_lineage_graph_compat.py -q → 40 skipped (expected with no COMPAT_* backend env vars)
  • uv run ruff check tests/integration/compat/test_lineage_graph_compat.py
  • uvx ruff format --check ./aperag ./tests via pre-commit make lint

I also smoke-ran the new description-free path against InMemoryLineageGraphStore locally to confirm the target keeps {target, source} lineage, source is deleted, and source description text becomes "".

notes

This PR deliberately does not pull in Phase C score threshold / entity_type_alias work. It is the B2 contract layer only.

@earayu
earayu merged commit 52fb68e into main Apr 30, 2026
15 checks passed
@earayu
earayu deleted the huangzhangshu/task-31-b2-tests branch April 30, 2026 09:48
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