Summary
The scheduled 05. OpenClaw2OpenViking Memory Tests workflow has been red on main for ~10 hours across two consecutive commits. 8 P0 memory tests fail with the same assertion — 未在任何关键词组中找到匹配 ("no match found in any keyword group"). The first failure appeared 14 minutes after #2933 landed, and a follow-up docs-only commit (#2960) still fails, which rules out a flake and points at a deterministic regression introduced by #2933.
Evidence (timeline)
| Time (UTC) |
Commit |
PR |
Event |
Result |
| 2026-07-02 02:57 |
c6991440 |
#2933 feat(encrypt): reduce encrypted temp-write metadata overhead… |
merged |
— |
| 2026-07-02 03:11 |
c6991440 |
— |
schedule run 28562628180 |
8 failed, 4 passed |
| 2026-07-02 09:50 |
0a40dde4 |
#2960 docs: add OpenViking Studio live demo link to READMEs |
merged |
— (docs-only, 0 code) |
| 2026-07-02 10:56 |
0a40dde4 |
— |
schedule run 28584782979 |
failure (exit 1) |
#2960 touches only READMEs — zero code change — yet the schedule still fails on it. That is the tell it is a deterministic regression carried by the code path #2933 changed, not a transient.
Failing tests (run 28562628180, all same assertion)
FAILED tests/p0/test_context_engine.py::TestAssembleArchiveReplay::test_assemble_replays_archive_summary - AssertionError: False is not true : 未在任何关键词组中找到匹配
FAILED tests/p0/test_context_engine.py::TestMemoryRecallExplicit::test_memory_recall_explicit_search - AssertionError: False is not true : 未在任何关键词组中找到匹配
FAILED tests/p0/test_context_engine.py::TestArchiveExpand::test_archive_expand_restores_details - AssertionError: False is not true : 未在任何关键词组中找到匹配
FAILED tests/p0/test_context_engine.py::TestSessionIsolation::test_session_isolation_no_cross_contamination - AssertionError: False is not true : 未在任何关键词组中找到匹配
FAILED tests/p0/test_context_engine.py::TestCompactArchiveGeneration::test_compact_produces_archive_on_threshold - AssertionError: False is not true : 未在任何关键词组中找到匹配
FAILED tests/p0/test_memory_crud.py::TestMemoryUpdate::test_memory_update_verify - AssertionError: False is not true : 未在任何关键词组中找到匹配
FAILED tests/p0/test_memory_crud.py::TestMemoryDelete::test_memory_delete_verify - AssertionError: False is not true : 未在任何关键词组中找到匹配
FAILED tests/p0/test_memory_crud.py::TestMemoryUpdateOverwrite::test_memory_update_overwrite_group_a - AssertionError: False is not true : 未在任何关键词组中找到匹配
=================== 8 failed, 4 passed in 3381.00s (0:56:21) ===================
8 tests across test_context_engine.py (recall / archive / session isolation / compact) and test_memory_crud.py (update / delete / overwrite) all fail at the same keyword-group match assertion. The common surface is the context engine's memory recall/search path, which depends on stored memory metadata being readable.
Root-cause hypothesis (asking before assuming)
#2933 changes the encrypted temp-write path: "caching temp-root readiness and turning the temp-file path into a TTL fast path + NotFound fallback + AlreadyExists cleanup."
If the TTL fast path or the NotFound fallback returns a stale/empty metadata read for a memory that should exist, the context engine's keyword-group matcher sees no candidate memories and asserts 未在任何关键词组中找到匹配. That would explain why the failures cluster on recall/archive/crud tests — they all exercise read-back of just-written memories through the encrypted temp-write path.
I have not read the #2933 diff end-to-end, so this is a hypothesis grounded in the symptom + commit message + 14-minute time-to-failure, not a confirmed root cause. Flagging for the team to confirm.
Reproduce
The scheduled run itself reproduces — no extra repro needed:
What I checked before filing
Happy to help bisect if useful — e.g. reverting #2933's temp-root readiness cache on a branch and re-running the P0 suite would confirm or refute the hypothesis.
Summary
The scheduled
05. OpenClaw2OpenViking Memory Testsworkflow has been red onmainfor ~10 hours across two consecutive commits. 8 P0 memory tests fail with the same assertion —未在任何关键词组中找到匹配("no match found in any keyword group"). The first failure appeared 14 minutes after #2933 landed, and a follow-up docs-only commit (#2960) still fails, which rules out a flake and points at a deterministic regression introduced by #2933.Evidence (timeline)
c6991440feat(encrypt): reduce encrypted temp-write metadata overhead…c69914400a40dde4docs: add OpenViking Studio live demo link to READMEs0a40dde4#2960 touches only READMEs — zero code change — yet the schedule still fails on it. That is the tell it is a deterministic regression carried by the code path #2933 changed, not a transient.
Failing tests (run 28562628180, all same assertion)
8 tests across
test_context_engine.py(recall / archive / session isolation / compact) andtest_memory_crud.py(update / delete / overwrite) all fail at the same keyword-group match assertion. The common surface is the context engine's memory recall/search path, which depends on stored memory metadata being readable.Root-cause hypothesis (asking before assuming)
#2933 changes the encrypted temp-write path: "caching temp-root readiness and turning the temp-file path into a TTL fast path + NotFound fallback + AlreadyExists cleanup."
If the TTL fast path or the
NotFoundfallback returns a stale/empty metadata read for a memory that should exist, the context engine's keyword-group matcher sees no candidate memories and asserts未在任何关键词组中找到匹配. That would explain why the failures cluster on recall/archive/crud tests — they all exercise read-back of just-written memories through the encrypted temp-write path.I have not read the #2933 diff end-to-end, so this is a hypothesis grounded in the symptom + commit message + 14-minute time-to-failure, not a confirmed root cause. Flagging for the team to confirm.
Reproduce
The scheduled run itself reproduces — no extra repro needed:
What I checked before filing
未在任何关键词组中找到匹配/ "keyword group" / "context engine" recall) — no duplicate.Happy to help bisect if useful — e.g. reverting #2933's temp-root readiness cache on a branch and re-running the P0 suite would confirm or refute the hypothesis.