openclaw/docs/plugins
Yuval Dinodia 623a015928
fix(memory-wiki): preserve user edits when rolling back ChatGPT imports (#116517)
* fix(memory-wiki): preserve user edits when rolling back ChatGPT imports

Rollback deleted created pages and overwrote updated pages unconditionally,
destroying content the user added after the import with no recovery copy.
Import runs now record a content hash of each written page after vault
compile, and rollback preserves any page whose current content no longer
matches into the run's recovered directory before deleting or restoring.
Legacy run records without hashes preserve unconditionally.

Fixes #116457

* fix(memory-wiki): move pages aside atomically during rollback

Rollback now renames the live page into the recovery location before
inspecting it, so a concurrent external save cannot land between the
content read and the delete or snapshot restore. Matching pages drop
the moved copy; mismatching pages keep it as the recovery file.

* fix(memory-wiki): make rollback snapshot restore collision-safe

The snapshot restore wrote directly to the page path after the
move-aside, so a page recreated by an editor in that window was
overwritten with no recovery copy. Restore now creates the snapshot
exclusively and on collision moves the recreated page aside and
retries; recovery filenames are uniqued so a second move-aside cannot
clobber an earlier preserved copy.

* fix(memory-wiki): record rollback hashes at write time

* fix(memory-wiki): make ChatGPT rollback retry-safe

* fix(memory-wiki): fence ChatGPT rollback phases

---------

Co-authored-by: Vincent Koc <vincentkoc@ieee.org>
2026-07-31 08:01:52 +00:00
..
reference feat(plugins): externalize Teams and Zoom meetings (#116682) 2026-07-31 14:10:46 +08:00
adding-capabilities.md refactor(config): config-surface reduction tranche 3 — product consolidations (review request) (#111527) 2026-07-21 20:28:43 -07:00
admin-http-rpc.md fix(gateway): admit plugin HTTP work during suspension (#104112) 2026-07-10 22:34:57 -07:00
agent-tools.md
architecture-internals.md refactor: replace context-engine retry proxy with declared params (#115872) 2026-07-29 08:37:08 -04:00
architecture.md feat: auto-collect durable meeting transcripts (#113122) 2026-07-23 11:41:08 -07:00
beam.md feat(plugins): mirror local coding sessions to a remote Beam receiver (#114735) 2026-07-27 17:31:34 -04:00
building-extensions.md docs: rewrite published docs grounded in current source (#100142) 2026-07-05 00:32:47 -04:00
building-plugins.md docs(plugins): link setup-input deprecations to the migration pattern and document reader sweeps (#112692) 2026-07-22 11:04:19 -07:00
bundles.md docs: rewrite published docs grounded in current source (#100142) 2026-07-05 00:32:47 -04:00
cli-backend-plugins.md fix #95351: [Feature]: Generic JSONL line-parsing hook for CliBackendPlugin (native tool-card support beyond claude-stream-json) (#95386) 2026-07-30 03:37:39 +08:00
codex-computer-use.md fix(codex): restore connected apps for token-authenticated runs (#115075) 2026-07-29 06:21:25 -04:00
codex-harness-reference.md fix(codex): restore connected apps for token-authenticated runs (#115075) 2026-07-29 06:21:25 -04:00
codex-harness-runtime.md fix(codex): restore connected apps for token-authenticated runs (#115075) 2026-07-29 06:21:25 -04:00
codex-harness.md fix(codex): add remote WebSocket heartbeat and reconnect (#116135) 2026-07-30 15:38:26 -07:00
codex-native-plugins.md feat(codex): support the openai-api-curated marketplace wire name (#115955) 2026-07-29 11:07:16 -04:00
codex-supervision.md improve: stream native sessions as hosts finish (#110211) 2026-07-17 23:59:57 +01:00
community.md docs: rewrite published docs grounded in current source (#100142) 2026-07-05 00:32:47 -04:00
compatibility.md refactor(prompt): use plain inbound context labels and drop system-tag sanitizer (#112000) 2026-07-27 11:27:53 +10:00
copilot.md refactor: remove expired plugin compatibility surfaces (#111451) 2026-07-19 11:04:48 -07:00
dependency-resolution.md build(deps): remove npm shrinkwrap; mirror pnpm lock into transient package locks (#114006) 2026-07-26 01:29:55 -04:00
google-meet.md refactor(meetings): close manual action state (#114247) 2026-07-26 23:25:19 -04:00
hooks.md docs(hooks): clarify inbound claim ownership (#116082) 2026-07-30 05:02:50 +08:00
install-overrides.md docs: rewrite published docs grounded in current source (#100142) 2026-07-05 00:32:47 -04:00
llama-cpp.md improve(ui): verify llama.cpp model setup 2026-07-30 23:41:58 +08:00
logbook.md refactor(config): config-surface reduction tranche 3 — product consolidations (review request) (#111527) 2026-07-21 20:28:43 -07:00
manage-plugins.md fix(plugins): keep bulk updates on the beta channel (#115083) 2026-07-29 12:04:38 +08:00
manifest.md feat(plugins): match shared models across vendor-namespaced catalog ids (#115210) 2026-07-28 10:22:23 -04:00
meeting-plugins.md feat(plugins): externalize Teams and Zoom meetings (#116682) 2026-07-31 14:10:46 +08:00
memory-lancedb.md refactor(config): config-surface reduction tranche 3 — product consolidations (review request) (#111527) 2026-07-21 20:28:43 -07:00
memory-wiki.md fix(memory-wiki): preserve user edits when rolling back ChatGPT imports (#116517) 2026-07-31 08:01:52 +00:00
message-presentation.md refactor: remove dead tooling and deprecated exports (#112915) 2026-07-23 01:28:11 -04:00
oc-path.md docs: rewrite published docs grounded in current source (#100142) 2026-07-05 00:32:47 -04:00
onepassword.md fix(onepassword): make SecretRef setup production-safe 2026-07-25 06:03:30 -05:00
plugin-inventory.md feat(plugins): externalize Teams and Zoom meetings (#116682) 2026-07-31 14:10:46 +08:00
plugin-permission-requests.md fix(plugins): enforce hook security invariants (#115701) 2026-07-29 16:10:34 +08:00
reference.md feat: add Fish Audio S2.1 and local MLX speech (#115790) 2026-07-29 05:15:33 -04:00
sdk-agent-harness.md feat(agents): add tool-free isolated completion (#114343) 2026-07-30 13:24:45 -05:00
sdk-channel-inbound.md refactor(whatsapp): keep inbound boundary transport-private 2026-07-29 20:34:55 -05:00
sdk-channel-ingress.md feat(channels): add unified implicit mention policy (#108829) 2026-07-16 17:16:01 -07:00
sdk-channel-message.md refactor: remove expired plugin compatibility surfaces (#111451) 2026-07-19 11:04:48 -07:00
sdk-channel-outbound.md fix(nostr): report unavailable ingress when queue open fails (#115313) 2026-07-28 13:34:23 -04:00
sdk-channel-plugins.md refactor(model-picker): centralize session apply contracts (#114739) 2026-07-27 16:58:23 -04:00
sdk-channel-turn.md
sdk-entrypoints.md refactor(fs): adopt fs-safe 0.5 core primitives (#113705) 2026-07-28 03:41:47 -04:00
sdk-migration.md refactor(fs): adopt fs-safe 0.5 core primitives (#113705) 2026-07-28 03:41:47 -04:00
sdk-overview.md refactor: replace context-engine retry proxy with declared params (#115872) 2026-07-29 08:37:08 -04:00
sdk-provider-plugins.md refactor(providers): collapse live model discovery onto shared projection hook (#113903) 2026-07-25 16:17:27 -07:00
sdk-runtime.md feat(agents): add tool-free isolated completion (#114343) 2026-07-30 13:24:45 -05:00
sdk-setup.md feat(channels): add channel-owned setup contracts (#112176) 2026-07-22 19:57:42 -04:00
sdk-subpaths.md fix(plugin-sdk): ship documented public typings (#116345) 2026-07-30 18:20:07 +08:00
sdk-testing.md test(telegram): consolidate bot test harness (#113571) 2026-07-25 05:28:26 -07:00
teams-meetings.md feat(plugins): externalize Teams and Zoom meetings (#116682) 2026-07-31 14:10:46 +08:00
tool-plugins.md docs(plugins): link setup-input deprecations to the migration pattern and document reader sweeps (#112692) 2026-07-22 11:04:19 -07:00
vault.md Add Vault SecretRef plugin (#89255) 2026-07-09 05:30:12 -05:00
voice-call.md fix(voice-call): pin Twilio webhook verification to the configured public path (#112800) 2026-07-30 01:08:38 +08:00
webhooks.md fix(webhooks): keep routes cold when SecretRefs are unavailable (#109715) 2026-07-16 23:56:59 -07:00
workboard.md feat(dashboard): workboard:mini aggregates all boards when boardId is unset (#112484) 2026-07-21 20:32:33 -07:00
zalouser.md docs: rewrite published docs grounded in current source (#100142) 2026-07-05 00:32:47 -04:00
zoom-meetings.md feat(plugins): externalize Teams and Zoom meetings (#116682) 2026-07-31 14:10:46 +08:00