Commit Graph

557 Commits

Author SHA1 Message Date
Peter Steinberger
4da11520c8 test: remove redundant defined guards 2026-05-11 19:13:20 +01:00
Shakker
3bd1ff4140 test: verify memory plugin artifacts 2026-05-11 16:42:29 +01:00
YB0y
3b8cfc3657 fix(memory-core): cap MEMORY.md size during dreaming promotions to prevent unbounded growth (#73691)
Dreaming's deep-phase promotion path appends to ~/.openclaw/workspace-<agent>/MEMORY.md
without a durable size budget. After weeks of use, the file grows past the bootstrap
injection cap (~12KB/file), at which point bootstrap silently truncates promoted memory
and (per the issue body) session writes can hit lock timeouts that wedge the gateway.

Adds a bounded compaction step in applyShortTermPromotions: before each write, drop the
OLDEST auto-promoted sections (date-ordered) until existing + new section fits within
memoryFileMaxChars (default 10,000 chars, safely below the 12KB bootstrap cap).
User-authored content is preserved unconditionally; only dreaming-owned sections are
eligible for compaction.

Verified:
- pnpm install --frozen-lockfile
- pnpm test extensions/memory-core/src/memory-budget.test.ts extensions/memory-core/src/short-term-promotion.test.ts
- pnpm exec oxfmt --check --threads=1 extensions/memory-core/src/memory-budget.ts extensions/memory-core/src/memory-budget.test.ts extensions/memory-core/src/short-term-promotion.ts extensions/memory-core/src/short-term-promotion.test.ts CHANGELOG.md
- pnpm check:changed
- pnpm tsgo:core
- pnpm tsgo:extensions
- pnpm tsgo:test:src
- git diff --check
- live driver: real applyShortTermPromotions across 5 sweeps with oversized seeded MEMORY.md — file stayed bounded, oldest sections compacted, user content preserved

Closes #73691
2026-05-11 15:04:30 +01:00
Peter Steinberger
5b6f4d6bb6 test: tighten acpx memory assertions 2026-05-11 14:23:32 +01:00
Peter Steinberger
3b1ad58241 test: tighten telegram gateway assertions 2026-05-11 11:03:44 +01:00
Shakker
ec2bef8154 test: tighten memory citation assertions 2026-05-11 10:56:32 +01:00
Peter Steinberger
9de498bfb0 test: fix current test type assertions 2026-05-11 10:41:37 +01:00
Shakker
0a39738257 test: tighten memory event assertions 2026-05-11 10:30:15 +01:00
Shakker
e588eadb5b test: tighten memory tool debug assertions 2026-05-11 10:29:26 +01:00
Shakker
efa6da6e02 test: tighten memory dreaming command assertions 2026-05-11 10:28:20 +01:00
Shakker
3fe1c1504d test: tighten memory dreaming markdown assertion 2026-05-11 10:25:54 +01:00
Shakker
337d58404f test: tighten dreaming repair assertions 2026-05-11 09:27:29 +01:00
Shakker
2b5c18012c test: tighten memory cli assertions 2026-05-11 09:26:40 +01:00
Peter Steinberger
baaf42cd22 test: tighten memory atomic reindex assertions 2026-05-11 08:38:22 +01:00
Peter Steinberger
9ce18070bc test: tighten memory search manager assertions 2026-05-11 07:04:21 +01:00
Peter Steinberger
4fa6a4ee6f fix(memory): land cron warning guard (#77027) (thanks @rubencu) 2026-05-11 05:34:52 +01:00
Ruben Cuevas
2c7b87bdb8 fix(memory): skip cron warnings without gateway context 2026-05-11 05:34:52 +01:00
Rubén Cuevas
00bb0dde4d fix(memory): preserve session corpus labels (#71898)
Summary:
- The PR updates memory-core `memory_search` result shaping to surface `corpus` from each hit's `source`, adds ... session corpus-label coverage, adds a changelog entry, and includes a small tempdir test assertion cleanup.
- Reproducibility: yes. Current main has a high-confidence source-level reproduction: session hits keep `sourc ... the final mapper hard-codes `corpus: "memory"`; the PR body also supplies live Gateway before/after output.

Automerge notes:
- PR branch already contained follow-up commit before automerge: test(memory): clarify corpus label regression
- PR branch already contained follow-up commit before automerge: fix(memory): type session corpus results
- PR branch already contained follow-up commit before automerge: fix(memory): preserve session corpus labels
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): address review for automerge-openclaw-openclaw-7189…

Validation:
- ClawSweeper review passed for head 02d0db0861.
- Required merge gates passed before the squash merge.

Prepared head SHA: 02d0db0861
Review: https://github.com/openclaw/openclaw/pull/71898#issuecomment-4340800992

Co-authored-by: Ruben Cuevas <hi@rubencu.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
2026-05-11 02:42:18 +00:00
Shakker
79bbdfaaf9 test: tighten memory event artifact path assertions 2026-05-11 02:27:53 +01:00
Peter Steinberger
6346e792c4 build: enable stricter TypeScript checks 2026-05-11 02:04:17 +01:00
Peter Steinberger
c906f117e6 test: tighten memory promotion assertions 2026-05-11 01:29:45 +01:00
Shakker
b97b2577e4 test: tighten memory search warning assertion 2026-05-11 00:11:44 +01:00
Peter Steinberger
380896efb1 test: type memory cli secret ref assertion 2026-05-10 18:56:56 +01:00
Shakker
61f5b68cb8 test: tighten memory promotion signal assertions 2026-05-10 18:51:21 +01:00
Shakker
d10fdd2923 test: tighten memory cli output assertions 2026-05-10 18:49:41 +01:00
Shakker
8b11c07eef test: tighten memory search manager assertions 2026-05-10 18:47:37 +01:00
Shakker
e879664348 test: tighten memory index assertions 2026-05-10 18:46:27 +01:00
Peter Steinberger
ecb677b45e test: clear memory dreaming narrative broad matchers 2026-05-10 18:44:48 +01:00
Shakker
a9a9454765 test: tighten memory watcher path assertions 2026-05-10 18:44:36 +01:00
Shakker
36855c6655 test: tighten short term audit assertions 2026-05-10 18:43:23 +01:00
Shakker
038f86f1cc test: tighten short term concept tag assertions 2026-05-10 18:42:07 +01:00
Shakker
b36592fbb7 test: tighten dreaming repair issue assertion 2026-05-10 18:39:03 +01:00
Shakker
f3cc9792fd test: tighten memory provider state assertions 2026-05-10 18:37:46 +01:00
Shakker
7f4da4e6ca test: tighten memory concept tag assertions 2026-05-10 18:36:29 +01:00
Peter Steinberger
f9c0dc2d2b fix(feishu): fall back from missing thread replies (#80306)
Summary:
- The branch adds an opt-in Feishu top-level group-send fallback for withdrawn or missing normal quoted thread replies, plus regression coverage, a changelog entry, and CI/lint typing and baseline refreshes.
- Reproducibility: yes. at source level. Current main hard-errors withdrawn/not-found Feishu reply targets when `replyInThread` is true, and the existing regression test asserts that no top-level create fallback occurs.

Automerge notes:
- PR branch already contained follow-up commit before automerge: fix(feishu): fall back from missing thread replies
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): address review for automerge-openclaw-openclaw-8030…
- PR branch already contained follow-up commit before automerge: fix(clawsweeper): reconcile automerge-openclaw-openclaw-80306 with ma…
- PR branch already contained follow-up commit before automerge: fix(ci): satisfy stricter lint and test types
- PR branch already contained follow-up commit before automerge: fix(ci): align Node 24 test typing

Validation:
- ClawSweeper review passed for head 93146f9d13.
- Required merge gates passed before the squash merge.

Prepared head SHA: 93146f9d13
Review: https://github.com/openclaw/openclaw/pull/80306#issuecomment-4415604729

Co-authored-by: Peter Steinberger <steipete@gmail.com>
Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com>
2026-05-10 16:41:51 +00:00
Peter Steinberger
f3ee9e26f9 test: clear broad mock helper lint 2026-05-10 17:06:15 +01:00
Peter Steinberger
2fc8392537 test: clear memory dreaming broad matchers 2026-05-10 15:51:25 +01:00
Peter Steinberger
67be10c842 test: clear memory dreaming phase broad matchers 2026-05-10 15:44:15 +01:00
Peter Steinberger
fde6d15454 test: clear qmd manager broad matchers 2026-05-10 15:33:26 +01:00
Peter Steinberger
4f32a32ed6 refactor: move rare sdk seams into owners 2026-05-10 12:37:10 +01:00
Peter Steinberger
827b0de0ce refactor: reduce plugin sdk surface 2026-05-10 12:37:10 +01:00
bitloi
82bc6025bc fix(memory): yield during session indexing 2026-05-10 02:40:56 -04:00
Peter Steinberger
9243b575ed chore(release): prepare 2026.5.10-beta.1 2026-05-10 06:13:38 +01:00
Peter Steinberger
0aa0083fc8 test(release): stabilize plugin prerelease shards 2026-05-10 01:06:09 +01:00
Peter Steinberger
483075ddd4 fix(memory): preserve atomic reindex cleanup cause 2026-05-09 14:53:33 +01:00
Peter Steinberger
53a97fe0a7 fix(memory): harden atomic reindex cleanup 2026-05-09 14:43:32 +01:00
Peter Steinberger
4883a0e6c4 chore: update workspace dependencies 2026-05-09 10:58:36 +01:00
Ted Li
c39f85822a fix(memory): warn on unverified qmd conflict 2026-05-09 05:36:40 -04:00
Ted Li
49db1908f3 fix(memory): verify qmd conflict before rebind 2026-05-09 05:36:40 -04:00
Ted Li
e422bcfc2a fix(memory): rebind qmd path conflicts from add errors 2026-05-09 05:36:40 -04:00