Skip to content

[Medium] Gated Qdrant integration tests report 'passed' without running (masks a real panic) #358

Description

@gnanirahulnutakki

Summary

The gated Qdrant integration scenarios return early and count as passed (not ignored) when their env gate is unset. The default cargo test -p ardur-e2e-tests prints a green N passed; 0 ignored while the durable-memory and hybrid-full-pipeline scenarios never ran — masking a real panic in the durable path.

Evidence

  • crates/e2e-tests/tests/scenario_qdrant_memory_persistence.rs:33-36 and crates/e2e-tests/tests/scenario_hybrid_memory_full_pipeline.rs:36-38:
    if std::env::var("QDRANT_INTEGRATION_TEST").as_deref() != Ok("1") {
        eprintln!("skipping …");
        return None;   // test body then does `let Some(cfg) = gate() else { return; }`
    }
  • Neither test carries #[ignore].

Impact

False confidence: a green suite implies durable memory is exercised; it is not, and it in fact panics when actually run.

Suggested fix

Mark these #[ignore = "requires QDRANT_INTEGRATION_TEST=1"] (so the summary shows ignored), and add a CI job that boots Qdrant and runs --ignored.

Metadata

Metadata

Assignees

No one assigned

    Labels

    auditFound by the 2026-07 Opus audit sweepbugSomething isn't workingcomp:memoryMemory / Qdrant backendseverity:mediumMedium severity

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions