Browse Source

Template: add project_memory_lifecycle

master
Serge Shutov 1 week ago
parent
commit
3a104a0b51
  1. 57
      memory/state.template.json

57
memory/state.template.json

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
{
"version": 2,
"updatedAt": "2026-11-07T06:24:40.735Z",
"updatedAt": "2026-11-07T06:35:38.878Z",
"entries": [
{
"id": "0f90dcf0-5d43-4ca4-bf86-ad8b3ee20382",
@ -17,8 +17,8 @@ @@ -17,8 +17,8 @@
"version": 2,
"createdAt": "2026-11-02T23:35:16.258Z",
"updatedAt": "2026-11-03T13:09:07.319Z",
"lastRecalled": "2026-11-07T06:13:58.509Z",
"recallCount": 5,
"lastRecalled": "2026-11-07T06:30:49.448Z",
"recallCount": 7,
"bytes": 1545
},
{
@ -36,8 +36,8 @@ @@ -36,8 +36,8 @@
"version": 3,
"createdAt": "2026-11-02T23:35:16.258Z",
"updatedAt": "2026-11-07T06:22:42.557Z",
"lastRecalled": "2026-11-07T06:13:58.509Z",
"recallCount": 5,
"lastRecalled": "2026-11-07T06:30:49.448Z",
"recallCount": 7,
"bytes": 1506
},
{
@ -55,8 +55,8 @@ @@ -55,8 +55,8 @@
"version": 2,
"createdAt": "2026-11-02T23:35:16.258Z",
"updatedAt": "2026-11-07T06:23:52.855Z",
"lastRecalled": "2026-11-07T06:13:58.509Z",
"recallCount": 5,
"lastRecalled": "2026-11-07T06:30:49.448Z",
"recallCount": 7,
"bytes": 2162
},
{
@ -74,8 +74,8 @@ @@ -74,8 +74,8 @@
"version": 4,
"createdAt": "2026-11-02T23:35:16.258Z",
"updatedAt": "2026-11-07T06:23:55.861Z",
"lastRecalled": "2026-11-07T06:13:58.509Z",
"recallCount": 5,
"lastRecalled": "2026-11-07T06:30:49.448Z",
"recallCount": 7,
"bytes": 1488
},
{
@ -95,8 +95,8 @@ @@ -95,8 +95,8 @@
"version": 7,
"createdAt": "2026-11-02T23:35:16.258Z",
"updatedAt": "2026-11-07T06:24:09.423Z",
"lastRecalled": "2026-11-07T06:13:58.509Z",
"recallCount": 5,
"lastRecalled": "2026-11-07T06:30:49.448Z",
"recallCount": 7,
"bytes": 2823
},
{
@ -114,8 +114,8 @@ @@ -114,8 +114,8 @@
"version": 2,
"createdAt": "2026-11-02T23:35:16.258Z",
"updatedAt": "2026-11-02T23:51:10.669Z",
"lastRecalled": "2026-11-07T06:13:58.509Z",
"recallCount": 5,
"lastRecalled": "2026-11-07T06:30:49.448Z",
"recallCount": 7,
"bytes": 1487
},
{
@ -136,8 +136,8 @@ @@ -136,8 +136,8 @@
"version": 1,
"createdAt": "2026-11-06T14:31:47.706Z",
"updatedAt": "2026-11-06T14:31:47.706Z",
"lastRecalled": "2026-11-07T06:13:58.509Z",
"recallCount": 5,
"lastRecalled": "2026-11-07T06:30:49.448Z",
"recallCount": 7,
"bytes": 1917
},
{
@ -158,8 +158,8 @@ @@ -158,8 +158,8 @@
"version": 1,
"createdAt": "2026-11-07T03:58:24.727Z",
"updatedAt": "2026-11-07T03:58:24.727Z",
"lastRecalled": "2026-11-07T06:13:58.509Z",
"recallCount": 5,
"lastRecalled": "2026-11-07T06:30:49.448Z",
"recallCount": 7,
"bytes": 1706
},
{
@ -517,6 +517,29 @@ @@ -517,6 +517,29 @@
"lastRecalled": null,
"recallCount": 0,
"bytes": 1874
},
{
"id": "0b58af8d-6e1d-4803-bba3-6ff7398c7a52",
"track": "agent",
"scope": "user-global",
"workspaceKey": "",
"key": "project_memory_lifecycle",
"text": "Жизненный цикл памяти dsh-memory: архив, контракт протокола, порт из storage. Сделано 07.11.2026, коммиты b7558ea, 70f5f65, e616399, 5995fa1.\n\nПРОБЛЕМА. protocol_*-записи с always инжектились в каждый чат и врали: protocol_tools_and_rules говорил «dsh_bash блокирует метасимволы», а код уже спрашивал confirm. protocol_recovery вёл на несуществующий PART16. Директива описывала состояние на 03.11.2026. Поле state (active|done|archive) было в схеме, но getInjection его игнорировал — заархивировать always-запись было нельзя, только удалить.\n\nЧТО СДЕЛАНО. getInjection пропускает state=archive и state=done (bridge/memory.js). Три старые грабли заархивированы: pitfall_mjs_escaping, pitfall_crlf_mixed, pitfall_double_patch. Три протокола переписаны под текущий код: protocol_tools_and_rules (safe-list+confirm), protocol_pitfalls (большой oldText ломается и в SSE, CRLF нормализовать), protocol_recovery (актуальные файлы вместо PART16). Директива v5 — индекс файлов с датами. В protocol_memory_system v7 добавлено критическое правило: protocol_ с always = контракт с кодом, обновляется в том же коммите, расхождение = критический баг.\n\nПОРТ И CONFIRM. background.js и storage-bridge.js читают порт из chrome.storage (dshmem-bridge-port), дефолт 8766. В панели поле Port, сохраняется по change, требует F5. Health в логе пишет порт. confirm показывает команду dsh_bash (до 200 символов) или путь файлового инструмента, но не content/oldText (данные не показываются).\n\nГРАБЛИ. dsh_edit с большим oldText в README задвоил файл (1396 строк вместо 710) — откат через git checkout, замена скриптом по маркерам. Лимит 10 вызовов: пачки replace свыше 10 молча отбрасываются, версии не растут — проверять version после replace.",
"importance": "called",
"tags": [
"project",
"memory",
"archive",
"protocol"
],
"state": null,
"chatId": "",
"version": 1,
"createdAt": "2026-11-07T06:34:10.299Z",
"updatedAt": "2026-11-07T06:34:10.299Z",
"lastRecalled": null,
"recallCount": 0,
"bytes": 2539
}
],
"chats": {}

Loading…
Cancel
Save