extractCalendarsAndEvents required a namespace prefix on <response>; Radicale emits bare <response> (default DAV ns) so every entry was silently dropped — REPORT 200, ok:true, 0 events, no error. Prefix is now optional in the split and detection regexes. Tests: 8 in the ns suite incl. SCOPE-AWARE namespace validation (element stack of xmlns bindings, runs on all fixtures; undeclared prefix rejected with reason) + XMLValidator well-formedness rejection. Calendar-related suites: 51. eslint clean.