8000 fix(not-join): :db/valid-at binds the query's valid time on the per-row path (#615, backport) by adityamukho · Pull Request #618 · project-minigraf/minigraf · GitHub
[go: up one dir, main page]

Skip to content 8000

fix(not-join): :db/valid-at binds the query's valid time on the per-row path (#615, backport) - #618

Merged
adityamukho merged 2 commits into
mainfrom
fix/615-not-join-valid-at-main
Oct 16, 2026
Merged

adityamukho merged 2 commits into
mainfrom
fix/615-not-join-valid-at-main

Conversation

@adityamukho
Copy link
Copy Markdown
Collaborator

Summary

Backport of #616 (v3) for #615, a data-integrity issue on v2.x. A :db/valid-at pattern in a not-join body bound nil on the per-row path (evaluate_not_join): a body with an expression, any not-join in an or branch, and not-join in queries that invoke rules. evaluate_not_join now takes the valid-at value and uses from_slice_with_valid_at, as not_body_matches does. Rule definitions are unchanged (they pass Value::Null, as their other matchers do); see #617.

Cherry-picked cleanly except the CHANGELOG, where the entry goes under [Unreleased].

Verification

  • cargo test — all green; the three new tests/not_join_test.rs cases fail without the fix
  • cargo clippy --all-features -- -D warnings, cargo fmt --check — clean

🤖 Generated with Claude Code

https://claude.ai/code/session_01PtCdzbJMSS1V8qEPaJ4jXz

…r-row path (#615)

evaluate_not_join matched the body with PatternMatcher::from_slice, so a
:db/valid-at pattern bound nil when the body held an expression, sat in an
or branch, or ran on the rules query path. It now takes the valid-at value
and uses from_slice_with_valid_at, as not_body_matches does. The
StratifiedEvaluator passes Value::Null, matching how it matches rule bodies.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PtCdzbJMSS1V8qEPaJ4jXz
(cherry picked from commit 90f862c)
@codecov
codecov Bot commented Oct 16, 2026 •
Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@adityamukho
adityamukho merged commit 228a087 into main Oct 16, 2026
22 checks passed
@adityamukho
adityamukho deleted the fix/615-not-join-valid-at-main branch October 16, 2026 10:19
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

0