mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-24 11:25:50 -06:00
9541f4e8bd
* fix(memory-wiki): disambiguate the reserved index page stem for synthesis and ingest A create_synthesis or source ingest whose title slugifies to index was written to the auto-generated <dir>/index.md. That file is the only compiler-owned page filename: compile writes it per page group, and compile/query/status exclude it from page scanning. So the stored fact was both unretrievable and clobbered by the generated directory-index on the next compile. The collision only happens at the direct page-stem boundary: synthesis (syntheses/<slug>.md) and ingest (sources/<slug>.md) build a bare <dir>/<slug>.md path. The bridge, unsafe-local, and OKF callers compose slugifyWikiSegment output into prefixed and hashed identities that can never equal a bare index.md, and OKF already guards its own write path via OKF_RESERVED_FILENAMES. Add a dedicated slugifyWikiPageStem helper that escapes the reserved index stem and route only the two direct page writers through it, leaving slugifyWikiSegment output stable for the composed callers so their persisted page ids and paths do not churn on upgrade. Only index is reserved: the compiler never owns <dir>/log.md in these directories (the wiki log lives at .openclaw-wiki/log.jsonl), so a Log title keeps its existing direct path. Additive and deterministic, no migration. * fix(memory-wiki): preserve reserved-page ids --------- Co-authored-by: Vincent Koc <vincentkoc@ieee.org>