fix(plugin): derive missing crystallization summaries - #2222
Conversation
🤖 Open Code ReviewTarget: PR #2222 🔍 OpenCodeReview found 1 issue(s) in this PR. 1.
|
✅ Automated Test Results: PASSEDAll tests passed (9/9 executed). memos_local_plugin/unit: 9/9. Duration: 3s [advisory, non-gating] AI-generated tests on branch test/auto-gen-32083f8dbbd21f66-20260805162117: 19/19 passed — these do NOT affect the PR verdict; review the branch manually. Branch: |
|
Updated this PR at Changes:
Merge status:
Local verification:
Fresh OCR and AutoTest checks are pending. Python Actions run: https://github.com/MemTensor/MemOS/actions/runs/31122705498 (16 jobs queued while GitHub Actions is under a major outage). |
✅ Automated Test Results: PASSEDAll tests passed (10/10 executed). memos_local_plugin/unit: 10/10. Duration: 3s [advisory, non-gating] AI-generated tests on branch test/auto-gen-afc7396792f82328-20260807012102: 24/25 passed, 1 failed — these do NOT affect the PR verdict; review the branch manually. Branch: |
Description
Fixes #2143.
When the crystallization LLM returns a structurally useful draft but omits
summary, normalization currently produces an empty string and the defaultvalidator rejects the entire draft.
This change derives a sanitized fallback summary in this order:
retrieval_blurb/retrievalBlurb, when provided by older or alternate modelsExisting non-empty summaries are unchanged. Missing steps remain invalid, so
this does not weaken the structural validator.
Related Issue (Required): Fixes #2143
Type of change
How Has This Been Tested?
Evidence:
skill.crystallize.invalid: missing summary.npm test -- tests/unit/skill/crystallize.test.ts-> 9 passed.npm run lint-> TypeScript project check passed.npm run build-> plugin build passed.tests/unit/skillrun passed 35 tests; 13 database-backed testscould not start because the local Node 26 install lacks the
better-sqlite3native binding after an--ignore-scriptsinstall.Impact
Checklist
Reviewer Checklist