Skip to content

Fix: Ambiguity Guard bypassed by common auxiliary verbs (is/are/was/were)#1520

Open
ivegotahunnitonit wants to merge 1 commit into
moorcheh-ai:mainfrom
ivegotahunnitonit:fix-ambiguity-guard-1375
Open

Fix: Ambiguity Guard bypassed by common auxiliary verbs (is/are/was/were)#1520
ivegotahunnitonit wants to merge 1 commit into
moorcheh-ai:mainfrom
ivegotahunnitonit:fix-ambiguity-guard-1375

Conversation

@ivegotahunnitonit

@ivegotahunnitonit ivegotahunnitonit commented Jul 19, 2026

Copy link
Copy Markdown

This PR resolves the issue where the MemoryParsingService ambiguity guard is bypassed for most English sentences due to standalone auxiliary verbs (is, are, was, were) being present in STRONG_FACT_PATTERNS.

Standalone auxiliary verbs are too common and weak to bypass the ambiguity check. More specific structures are already mapped to correct confidence scores under classification rules.

Closes #1375
Part of Bug Challenge #770

Summary by CodeRabbit

  • Bug Fixes
    • Improved memory classification for ambiguous statements containing auxiliary verbs and misspelled decision terms.
    • Reduced incorrect “fact” classifications for generic phrasing such as “is,” “are,” “was,” and “were.”

@github-actions github-actions Bot added the bounty This issue has a bounty attached to it label Jul 19, 2026
@coderabbitai

coderabbitai Bot commented Jul 19, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 4cc47d63-623a-46c8-9f23-95a8bc7c27fb

📥 Commits

Reviewing files that changed from the base of the PR and between 32d83bd and 5a0ca75.

📒 Files selected for processing (2)
  • memanto/app/services/memory_parsing_service.py
  • tests/test_memory_parsing.py
💤 Files with no reviewable changes (1)
  • memanto/app/services/memory_parsing_service.py

📝 Walkthrough

Walkthrough

The memory parser no longer considers standalone auxiliary verbs strong factual evidence. A regression test verifies that input containing “is” and a misspelled decision term is classified as a decision.

Changes

Memory parsing classification

Layer / File(s) Summary
Strong fact pattern filtering
memanto/app/services/memory_parsing_service.py, tests/test_memory_parsing.py
Standalone is/are/was/were matching was removed from weak fact suppression, and a test verifies decision classification with an auxiliary verb and misspelled decision phrase.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

Suggested reviewers: het0814

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change: removing auxiliary verbs from the ambiguity guard bypass path.
Linked Issues check ✅ Passed The code and test changes address the linked bug by preventing standalone auxiliary verbs from bypassing the ambiguity guard and preserving fuzzy fallback behavior.
Out of Scope Changes check ✅ Passed The PR stays focused on the ambiguity-guard fix and its regression test, with no obvious unrelated changes.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bounty This issue has a bounty attached to it

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug: Ambiguity Guard is systemically bypassed by common auxiliary verbs (is/are/was/were)

1 participant