93a30c5c8f
When an observation response accidentally contains a <summary> tag with plain text (no <request>/<investigated>/etc. sub-tags), parseSummary was creating empty SESSION SUMMARY records with all fields as empty strings. Add an all-null guard AFTER field extraction: if none of the 5 sub-tags matched, the <summary> match is a false positive and we return null. This is distinct from the commented-out validation above (which rejected summaries with SOME missing fields). We only reject when ALL are absent — real partial summaries are still saved per the maintainer's explicit note. Closes #1360 Co-Authored-By: Claude <noreply@anthropic.com>