basic-memory 0.23.0__tar.gz → 0.23.1.dev20__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1370) hide show
  1. basic_memory-0.23.1.dev20/.github/workflows/mcp-registry-publish.yml +36 -0
  2. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/PKG-INFO +1 -1
  3. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/NOTE-FORMAT.md +11 -0
  4. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/justfile +4 -1
  5. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/hooks/pre_compact.py +8 -1
  6. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/hooks/session_start.py +8 -1
  7. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/hooks/test_claude_pre_compact.py +1 -1
  8. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/hooks/test_claude_session_start.py +1 -1
  9. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/hooks/pre_compact.py +4 -0
  10. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/hooks/session_start.py +4 -0
  11. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/scripts/update_versions.py +2 -2
  12. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/scripts/validate_claude_plugin.py +23 -1
  13. basic_memory-0.23.1.dev20/src/basic_memory/alembic/versions/7f6a2b8c9d10_index_full_postgres_note_content.py +77 -0
  14. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/auto_update.py +35 -3
  15. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/doctor.py +18 -4
  16. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/update.py +8 -6
  17. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/markdown/plugins.py +16 -3
  18. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/write_note.py +3 -0
  19. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/models/search.py +29 -1
  20. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/postgres_search_repository.py +234 -6
  21. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/conftest.py +4 -0
  22. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/conftest.py +4 -0
  23. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_auto_update.py +68 -0
  24. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_doctor_command.py +42 -0
  25. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/conftest.py +4 -0
  26. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_relation_edge_cases.py +60 -1
  27. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_postgres_search_repository.py +183 -0
  28. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_search_repository.py +2 -0
  29. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_claude_plugin_hooks.py +1 -1
  30. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_codex_plugin_package.py +18 -0
  31. basic_memory-0.23.1.dev20/tests/test_postgres_full_content_search_migration.py +54 -0
  32. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_update_versions.py +4 -1
  33. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/plugins/marketplace.json +0 -0
  34. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/adversarial-review/SKILL.md +0 -0
  35. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/adversarial-review/prompts/refute.md +0 -0
  36. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/adversarial-review/prompts/review.md +0 -0
  37. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/adversarial-review/schemas/findings.schema.json +0 -0
  38. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/adversarial-review/schemas/verdicts.schema.json +0 -0
  39. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux/SKILL.md +0 -0
  40. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux/agents/openai.yaml +0 -0
  41. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux/references/handles-and-identify.md +0 -0
  42. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux/references/panes-surfaces.md +0 -0
  43. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux/references/trigger-flash-and-health.md +0 -0
  44. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux/references/windows-workspaces.md +0 -0
  45. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-markdown/SKILL.md +0 -0
  46. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-markdown/agents/openai.yaml +0 -0
  47. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-markdown/references/commands.md +0 -0
  48. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-markdown/references/live-reload.md +0 -0
  49. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-settings/SKILL.md +0 -0
  50. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-settings/agents/openai.yaml +0 -0
  51. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-settings/references/all-keys.md +0 -0
  52. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-settings/references/shortcut-actions.md +0 -0
  53. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-settings/scripts/cmux-settings +0 -0
  54. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-workspace/SKILL.md +0 -0
  55. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-workspace/agents/openai.yaml +0 -0
  56. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/cmux-workspace/references/commands.md +0 -0
  57. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/code-review/SKILL.md +0 -0
  58. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/fix-pr-issues/SKILL.md +0 -0
  59. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/fix-pr-issues/agents/openai.yaml +0 -0
  60. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/fix-pr-issues/assets/icon.svg +0 -0
  61. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/infographics/SKILL.md +0 -0
  62. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/infographics/agents/openai.yaml +0 -0
  63. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/infographics/assets/icon.svg +0 -0
  64. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/infographics/references/prompt-blueprint.md +0 -0
  65. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/infographics/references/style-balance.md +0 -0
  66. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/instrumentation/SKILL.md +0 -0
  67. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/instrumentation/references/javascript/frameworks.md +0 -0
  68. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/instrumentation/references/javascript/patterns.md +0 -0
  69. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/instrumentation/references/python/integrations.md +0 -0
  70. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/instrumentation/references/python/logging-patterns.md +0 -0
  71. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/instrumentation/references/rust/patterns.md +0 -0
  72. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pr-create/SKILL.md +0 -0
  73. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pr-create/agents/openai.yaml +0 -0
  74. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pr-create/assets/icon.svg +0 -0
  75. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pr-description/SKILL.md +0 -0
  76. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pr-description/references/pr-body-template.md +0 -0
  77. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pr-review-loop/SKILL.md +0 -0
  78. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pull-request/SKILL.md +0 -0
  79. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/SKILL.md +0 -0
  80. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/agents/openai.yaml +0 -0
  81. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/evals/context/AGENTS.md +0 -0
  82. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/evals/context/pyproject.toml +0 -0
  83. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/evals/evals.json +0 -0
  84. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/evals/files/accepted_preparation.py +0 -0
  85. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/evals/files/accepted_snapshot.py +0 -0
  86. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/evals/files/shared_runtime_ownership.md +0 -0
  87. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/evals/files/test_accepted_preparation.py +0 -0
  88. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/evals/files/test_accepted_snapshot.py +0 -0
  89. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/justfile +0 -0
  90. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.agents/skills/pythonic-code/scripts/run_evals.py +0 -0
  91. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.claude/commands/release/beta.md +0 -0
  92. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.claude/commands/release/changelog.md +0 -0
  93. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.claude/commands/release/release-check.md +0 -0
  94. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.claude/commands/release/release.md +0 -0
  95. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.claude/commands/spec.md +0 -0
  96. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.claude/commands/test-live.md +0 -0
  97. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.claude/settings.json +0 -0
  98. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.claude-plugin/marketplace.json +0 -0
  99. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.codex/basic-memory.json +0 -0
  100. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.dockerignore +0 -0
  101. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.env.example +0 -0
  102. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.gitattributes +0 -0
  103. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  104. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  105. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/ISSUE_TEMPLATE/documentation.md +0 -0
  106. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  107. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/basic-memory/SOUL.md +0 -0
  108. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/basic-memory/config.yml +0 -0
  109. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/basic-memory/memory-ci-capture.md +0 -0
  110. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/dependabot.yml +0 -0
  111. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/claude-code-review.yml +0 -0
  112. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/claude-issue-triage.yml +0 -0
  113. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/claude.yml +0 -0
  114. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/consolidated-packages.yml +0 -0
  115. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/dev-release.yml +0 -0
  116. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/docker.yml +0 -0
  117. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/pr-title.yml +0 -0
  118. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/publish-skills.yml +0 -0
  119. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/release.yml +0 -0
  120. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.github/workflows/test.yml +0 -0
  121. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.gitignore +0 -0
  122. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/.python-version +0 -0
  123. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/AGENTS.md +0 -0
  124. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/CHANGELOG.md +0 -0
  125. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/CITATION.cff +0 -0
  126. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/CLA.md +0 -0
  127. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/CLAUDE.md +0 -0
  128. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/CODE_OF_CONDUCT.md +0 -0
  129. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/CONTRIBUTING.md +0 -0
  130. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/Dockerfile +0 -0
  131. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/LICENSE +0 -0
  132. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/NOTE-FORMAT.md +0 -0
  133. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/README.md +0 -0
  134. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/SECURITY.md +0 -0
  135. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/.github/workflows/benchmark-nightly.yml +0 -0
  136. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/.github/workflows/benchmark-smoke.yml +0 -0
  137. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/.gitignore +0 -0
  138. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/.python-version +0 -0
  139. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/AGENTS.md +0 -0
  140. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/README.md +0 -0
  141. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/datasets/README.md +0 -0
  142. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/datasets/locomo/README.md +0 -0
  143. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/datasets/locomo/download.sh +0 -0
  144. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/datasets/locomo/source.json +0 -0
  145. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/datasets/longmemeval/README.md +0 -0
  146. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/datasets/longmemeval/download.sh +0 -0
  147. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/results/matrix-v1.2-summary.md +0 -0
  148. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/results/matrix-v2-summary.md +0 -0
  149. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/results/structured-ingestion-findings.md +0 -0
  150. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/synthetic/docs/agent-memory.md +0 -0
  151. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/synthetic/docs/auth-memory.md +0 -0
  152. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/synthetic/docs/sync-memory.md +0 -0
  153. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/benchmarks/synthetic/queries.json +0 -0
  154. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/docs/benchmarks.md +0 -0
  155. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/docs/read-load-benchmark.md +0 -0
  156. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/docs/write-load-benchmark.md +0 -0
  157. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/justfile +0 -0
  158. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/pyproject.toml +0 -0
  159. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/scripts/read_load_bench.py +0 -0
  160. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/scripts/write_load_bench.py +0 -0
  161. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/__init__.py +0 -0
  162. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/__main__.py +0 -0
  163. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/bm_runtime.py +0 -0
  164. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/cli.py +0 -0
  165. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/concurrent_write.py +0 -0
  166. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/converters/__init__.py +0 -0
  167. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/converters/convomem_to_corpus.py +0 -0
  168. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/converters/locomo_to_corpus.py +0 -0
  169. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/converters/longmemeval_to_corpus.py +0 -0
  170. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/converters/structure_corpus.py +0 -0
  171. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/datasets/__init__.py +0 -0
  172. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/datasets/convomem.py +0 -0
  173. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/datasets/locomo.py +0 -0
  174. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/datasets/locomo_audit.py +0 -0
  175. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/datasets/longmemeval.py +0 -0
  176. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/exceptions.py +0 -0
  177. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/fairness.py +0 -0
  178. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/llm/__init__.py +0 -0
  179. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/llm/runners.py +0 -0
  180. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/models.py +0 -0
  181. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/providers/__init__.py +0 -0
  182. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/providers/base.py +0 -0
  183. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/providers/baseline_fullcontext.py +0 -0
  184. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/providers/baseline_grep.py +0 -0
  185. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/providers/bm_cloud.py +0 -0
  186. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/providers/bm_local.py +0 -0
  187. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/providers/mem0_local.py +0 -0
  188. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/providers/supermemory_local.py +0 -0
  189. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/providers/zep_reference.py +0 -0
  190. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/reporting/__init__.py +0 -0
  191. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/reporting/artifacts.py +0 -0
  192. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/reporting/compare.py +0 -0
  193. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/runner.py +0 -0
  194. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/scoring/__init__.py +0 -0
  195. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/scoring/diagnose.py +0 -0
  196. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/scoring/qa.py +0 -0
  197. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/scoring/retrieval.py +0 -0
  198. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/scoring/review.py +0 -0
  199. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/src/basic_memory_benchmarks/utils.py +0 -0
  200. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/test-int/test_compare_regression.py +0 -0
  201. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/test-int/test_runner_orchestration.py +0 -0
  202. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/converters/__init__.py +0 -0
  203. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/converters/test_convomem_converter.py +0 -0
  204. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/converters/test_locomo_audit_corrections.py +0 -0
  205. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/converters/test_longmemeval_converter.py +0 -0
  206. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/llm/test_runners.py +0 -0
  207. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/providers/test_baseline_providers.py +0 -0
  208. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/providers/test_bm_local_provider.py +0 -0
  209. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/providers/test_mem0_normalization.py +0 -0
  210. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/providers/test_supermemory_provider.py +0 -0
  211. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_cli_surface.py +0 -0
  212. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_concurrent_write.py +0 -0
  213. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_diagnose.py +0 -0
  214. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_fairness.py +0 -0
  215. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_manifest_schema.py +0 -0
  216. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_qa_scoring.py +0 -0
  217. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_retrieval_metrics.py +0 -0
  218. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_review.py +0 -0
  219. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_runner_grouped.py +0 -0
  220. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/tests/test_structure_corpus.py +0 -0
  221. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/benchmarks/uv.lock +0 -0
  222. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docker-compose-postgres.yml +0 -0
  223. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docker-compose.yml +0 -0
  224. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/ARCHITECTURE.md +0 -0
  225. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/DOMAIN_MODEL.md +0 -0
  226. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/Docker.md +0 -0
  227. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/ENGINEERING_STYLE.md +0 -0
  228. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/REDIS_READ_CACHE_PLAN.md +0 -0
  229. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/SPEC-PER-PROJECT-ROUTING.md +0 -0
  230. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/TRANSACTION_ISOLATION.md +0 -0
  231. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/ai-assistant-guide-extended.md +0 -0
  232. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/auto-bm-webhook-test.md +0 -0
  233. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/character-handling.md +0 -0
  234. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/cloud-cli.md +0 -0
  235. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/cloud-semantic-search-value.md +0 -0
  236. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/litellm-provider.md +0 -0
  237. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/logfire-instrumentation-strategy.md +0 -0
  238. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/manual-pages.md +0 -0
  239. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/mcp-ui-bakeoff-instructions.md +0 -0
  240. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/metadata-search.md +0 -0
  241. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/post-v0.18.0-test-plan.md +0 -0
  242. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/releases/v0.19.0.md +0 -0
  243. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/semantic-search-test-log.md +0 -0
  244. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/semantic-search.md +0 -0
  245. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/specs/SPEC-LOCAL-PLUS-PUBLISH.md +0 -0
  246. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/specs/SPEC-SCHEMA-IMPL.md +0 -0
  247. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/specs/SPEC-SCHEMA.md +0 -0
  248. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/docs/testing-coverage.md +0 -0
  249. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/glama.json +0 -0
  250. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/.coveragerc +0 -0
  251. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/.github/workflows/integration.yml +0 -0
  252. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/.github/workflows/pr-title.yml +0 -0
  253. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/.github/workflows/release.yml +0 -0
  254. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/.github/workflows/test.yml +0 -0
  255. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/.gitignore +0 -0
  256. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/CHANGELOG.md +0 -0
  257. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/LICENSE +0 -0
  258. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/MONKEYPATCH.md +0 -0
  259. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/README.md +0 -0
  260. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/__init__.py +0 -0
  261. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/justfile +0 -0
  262. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/plugin.yaml +0 -0
  263. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/pytest.ini +0 -0
  264. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/requirements-dev.txt +0 -0
  265. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/skill/SKILL.md +0 -0
  266. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/__init__.py +0 -0
  267. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/conftest.py +0 -0
  268. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/stubs/agent/__init__.py +0 -0
  269. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/stubs/agent/memory_provider.py +0 -0
  270. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/stubs/tools/__init__.py +0 -0
  271. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/stubs/tools/registry.py +0 -0
  272. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/test_actor.py +0 -0
  273. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/test_capture.py +0 -0
  274. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/test_child_env.py +0 -0
  275. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/test_commands.py +0 -0
  276. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/test_helpers.py +0 -0
  277. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/test_integration.py +0 -0
  278. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/test_lifecycle.py +0 -0
  279. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/test_prefetch.py +0 -0
  280. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/hermes/tests/test_provider.py +0 -0
  281. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/.githooks/pre-commit +0 -0
  282. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/.github/workflows/ci.yml +0 -0
  283. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/.github/workflows/release.yml +0 -0
  284. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/.gitignore +0 -0
  285. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/AGENTS.md +0 -0
  286. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/BASIC_MEMORY.md +0 -0
  287. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/CLAUDE.md +0 -0
  288. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/CONTEXT_ENGINE_PLAN.md +0 -0
  289. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/DEVELOPMENT.md +0 -0
  290. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/LICENSE +0 -0
  291. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/MEMORY_TASK_FLOW.md +0 -0
  292. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/README.md +0 -0
  293. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/SECURITY.md +0 -0
  294. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/biome.json +0 -0
  295. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/bm-client.test.ts +0 -0
  296. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/bm-client.ts +0 -0
  297. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/bun.lock +0 -0
  298. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/commands/cli.ts +0 -0
  299. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/commands/skills.test.ts +0 -0
  300. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/commands/skills.ts +0 -0
  301. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/commands/slash.ts +0 -0
  302. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/config.test.ts +0 -0
  303. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/config.ts +0 -0
  304. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/context-engine/basic-memory-context-engine.test.ts +0 -0
  305. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/context-engine/basic-memory-context-engine.ts +0 -0
  306. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/hooks/capture.test.ts +0 -0
  307. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/hooks/capture.ts +0 -0
  308. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/hooks/recall.test.ts +0 -0
  309. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/hooks/recall.ts +0 -0
  310. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/index.test.ts +0 -0
  311. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/index.ts +0 -0
  312. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/integration/bm-client.integration.test.ts +0 -0
  313. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/justfile +0 -0
  314. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/logger.test.ts +0 -0
  315. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/logger.ts +0 -0
  316. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/openclaw.plugin.json +0 -0
  317. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/package.json +0 -0
  318. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/schema/conversation-schema.ts +0 -0
  319. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/schema/task-schema.ts +0 -0
  320. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/scripts/bm-local.sh +0 -0
  321. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/scripts/fetch-skills.ts +0 -0
  322. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/scripts/setup-bm.sh +0 -0
  323. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/build-context.test.ts +0 -0
  324. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/build-context.ts +0 -0
  325. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/delete-note.test.ts +0 -0
  326. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/delete-note.ts +0 -0
  327. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/edit-note.test.ts +0 -0
  328. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/edit-note.ts +0 -0
  329. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/list-memory-projects.test.ts +0 -0
  330. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/list-memory-projects.ts +0 -0
  331. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/list-workspaces.test.ts +0 -0
  332. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/list-workspaces.ts +0 -0
  333. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/memory-provider.test.ts +0 -0
  334. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/memory-provider.ts +0 -0
  335. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/move-note.test.ts +0 -0
  336. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/move-note.ts +0 -0
  337. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/read-note.test.ts +0 -0
  338. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/read-note.ts +0 -0
  339. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/schema-diff.test.ts +0 -0
  340. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/schema-diff.ts +0 -0
  341. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/schema-infer.test.ts +0 -0
  342. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/schema-infer.ts +0 -0
  343. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/schema-validate.test.ts +0 -0
  344. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/schema-validate.ts +0 -0
  345. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/search-notes.test.ts +0 -0
  346. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/search-notes.ts +0 -0
  347. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/write-note.test.ts +0 -0
  348. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tools/write-note.ts +0 -0
  349. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tsconfig.build.json +0 -0
  350. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/integrations/openclaw/tsconfig.json +0 -0
  351. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/llms-install.md +0 -0
  352. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/.claude-plugin/marketplace.json +0 -0
  353. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/.claude-plugin/plugin.json +0 -0
  354. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/CHANGELOG.md +0 -0
  355. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/DESIGN.md +0 -0
  356. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/README.md +0 -0
  357. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/docs/architecture.md +0 -0
  358. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/docs/getting-started.md +0 -0
  359. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/docs/why-combine-memory.md +0 -0
  360. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/hooks/hooks.json +0 -0
  361. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/justfile +0 -0
  362. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/output-styles/basic-memory.md +0 -0
  363. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/schemas/coding-session.md +0 -0
  364. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/schemas/decision.md +0 -0
  365. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/schemas/manpage.md +0 -0
  366. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/schemas/session.md +0 -0
  367. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/schemas/task.md +0 -0
  368. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/settings.example.json +0 -0
  369. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/skills/bm-checkpoint/SKILL.md +0 -0
  370. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/skills/bm-decide/SKILL.md +0 -0
  371. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/skills/bm-orient/SKILL.md +0 -0
  372. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/skills/bm-remember/SKILL.md +0 -0
  373. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/skills/bm-setup/SKILL.md +0 -0
  374. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/skills/bm-share/SKILL.md +0 -0
  375. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/skills/bm-status/SKILL.md +0 -0
  376. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/claude-code/skills/bm-writing/SKILL.md +0 -0
  377. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/.codex-plugin/plugin.json +0 -0
  378. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/.mcp.json +0 -0
  379. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/DEVELOPMENT.md +0 -0
  380. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/README.md +0 -0
  381. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/assets/app-icon.png +0 -0
  382. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/assets/logo.png +0 -0
  383. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/hooks/hooks.json +0 -0
  384. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/hooks/test_codex_pre_compact.py +0 -0
  385. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/hooks/test_codex_session_start.py +0 -0
  386. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/justfile +0 -0
  387. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/schemas/codex-session.md +0 -0
  388. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/schemas/coding-session.md +0 -0
  389. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/schemas/decision.md +0 -0
  390. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/schemas/task.md +0 -0
  391. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-checkpoint/SKILL.md +0 -0
  392. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-checkpoint/agents/openai.yaml +0 -0
  393. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-checkpoint/assets/icon.svg +0 -0
  394. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-decide/SKILL.md +0 -0
  395. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-decide/agents/openai.yaml +0 -0
  396. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-decide/assets/icon.svg +0 -0
  397. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-orient/SKILL.md +0 -0
  398. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-orient/agents/openai.yaml +0 -0
  399. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-orient/assets/icon.svg +0 -0
  400. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-remember/SKILL.md +0 -0
  401. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-remember/agents/openai.yaml +0 -0
  402. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-remember/assets/icon.svg +0 -0
  403. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-setup/SKILL.md +0 -0
  404. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-setup/agents/openai.yaml +0 -0
  405. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-setup/assets/icon.svg +0 -0
  406. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-share/SKILL.md +0 -0
  407. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-share/agents/openai.yaml +0 -0
  408. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-share/assets/icon.svg +0 -0
  409. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-status/SKILL.md +0 -0
  410. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-status/agents/openai.yaml +0 -0
  411. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-status/assets/icon.svg +0 -0
  412. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-writing/SKILL.md +0 -0
  413. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-writing/agents/openai.yaml +0 -0
  414. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/plugins/codex/skills/bm-writing/assets/icon.svg +0 -0
  415. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/pyproject.toml +0 -0
  416. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/scripts/build_skills_dist.py +0 -0
  417. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/scripts/edit-issue-labels.sh +0 -0
  418. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/scripts/testmon_cache.py +0 -0
  419. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/scripts/validate_codex_plugin.py +0 -0
  420. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/scripts/validate_hermes_plugin.py +0 -0
  421. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/scripts/validate_skills.py +0 -0
  422. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/server.json +0 -0
  423. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/AGENTS.md +0 -0
  424. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/CLAUDE.md +0 -0
  425. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/DEVELOPMENT.md +0 -0
  426. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/README.md +0 -0
  427. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/justfile +0 -0
  428. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-capture/SKILL.md +0 -0
  429. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-ci-capture/SKILL.md +0 -0
  430. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-continue/SKILL.md +0 -0
  431. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-curate/SKILL.md +0 -0
  432. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-defrag/SKILL.md +0 -0
  433. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-ingest/SKILL.md +0 -0
  434. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-lifecycle/SKILL.md +0 -0
  435. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-literary-analysis/SKILL.md +0 -0
  436. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-metadata-search/SKILL.md +0 -0
  437. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-notes/SKILL.md +0 -0
  438. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-onboarding/SKILL.md +0 -0
  439. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-onboarding/evals/evals.json +0 -0
  440. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-onboarding/references/assistant-setup.md +0 -0
  441. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-onboarding/references/conventions.md +0 -0
  442. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-onboarding/references/domain-playbooks.md +0 -0
  443. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-onboarding/references/schema-guide.md +0 -0
  444. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-reflect/SKILL.md +0 -0
  445. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-research/SKILL.md +0 -0
  446. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-schema/SKILL.md +0 -0
  447. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/memory-tasks/SKILL.md +0 -0
  448. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills/skills-lock.json +0 -0
  449. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/skills-lock.json +0 -0
  450. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/smithery.yaml +0 -0
  451. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/__init__.py +0 -0
  452. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/alembic.ini +0 -0
  453. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/env.py +0 -0
  454. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/migrations.py +0 -0
  455. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/script.py.mako +0 -0
  456. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/2d26b287813b_dedupe_observations_and_purge_stale_.py +0 -0
  457. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/314f1ea54dc4_add_postgres_full_text_search_support_.py +0 -0
  458. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/3dae7c7b1564_initial_schema.py +0 -0
  459. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/502b60eaa905_remove_required_from_entity_permalink.py +0 -0
  460. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/5fe1ab1ccebe_add_projects_table.py +0 -0
  461. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/647e7a75e2cd_project_constraint_fix.py +0 -0
  462. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/6830751f5fb6_merge_multiple_heads.py +0 -0
  463. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/9d9c1cb7d8f5_add_mtime_and_size_columns_to_entity_.py +0 -0
  464. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/a1b2c3d4e5f6_fix_project_foreign_keys.py +0 -0
  465. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/a2b3c4d5e6f7_add_search_index_entity_cascade.py +0 -0
  466. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/b3c3938bacdb_relation_to_name_unique_index.py +0 -0
  467. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/cc7172b46608_update_search_index_schema.py +0 -0
  468. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/d7e8f9a0b1c2_add_structured_metadata_indexes.py +0 -0
  469. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/e7e1f4367280_add_scan_watermark_tracking_to_project.py +0 -0
  470. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/f8a9b2c3d4e5_add_pg_trgm_for_fuzzy_link_resolution.py +0 -0
  471. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/g9a0b3c4d5e6_add_external_id_to_project_and_entity.py +0 -0
  472. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/h1b2c3d4e5f6_add_postgres_vector_search_tables.py +0 -0
  473. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/i2c3d4e5f6g7_auto_backfill_semantic_embeddings.py +0 -0
  474. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/j3d4e5f6g7h8_rename_entity_type_to_note_type.py +0 -0
  475. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/k4e5f6g7h8i9_add_created_by_and_last_updated_by_to_entity.py +0 -0
  476. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/l5g6h7i8j9k0_add_note_content_table.py +0 -0
  477. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/m6h7i8j9k0l1_add_vector_sync_fingerprints.py +0 -0
  478. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/n7i8j9k0l1m2_cleanup_sqlite_search_orphans.py +0 -0
  479. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/o8j9k0l1m2n3_add_note_file_vacate_table.py +0 -0
  480. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/p9k0l1m2n3o4_add_vector_index_manifest_state.py +0 -0
  481. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/q0l1m2n3o4p5_add_relation_search_refresh_table.py +0 -0
  482. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/alembic/versions/r1m2n3o4p5q6_add_relation_generation.py +0 -0
  483. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/__init__.py +0 -0
  484. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/app.py +0 -0
  485. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/container.py +0 -0
  486. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/template_loader.py +0 -0
  487. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/__init__.py +0 -0
  488. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/__init__.py +0 -0
  489. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/directory_router.py +0 -0
  490. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/importer_router.py +0 -0
  491. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/inspect_router.py +0 -0
  492. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/knowledge_router.py +0 -0
  493. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/memory_router.py +0 -0
  494. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/project_router.py +0 -0
  495. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/prompt_router.py +0 -0
  496. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/resource_router.py +0 -0
  497. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/schema_router.py +0 -0
  498. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/routers/search_router.py +0 -0
  499. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/api/v2/utils.py +0 -0
  500. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/ci/README.md +0 -0
  501. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/ci/__init__.py +0 -0
  502. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/ci/project_updates.py +0 -0
  503. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/__init__.py +0 -0
  504. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/analytics.py +0 -0
  505. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/app.py +0 -0
  506. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/auth.py +0 -0
  507. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/__init__.py +0 -0
  508. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/ci.py +0 -0
  509. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/__init__.py +0 -0
  510. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/api_client.py +0 -0
  511. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/bisync_commands.py +0 -0
  512. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/cloud_utils.py +0 -0
  513. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/core_commands.py +0 -0
  514. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/project_sync.py +0 -0
  515. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/rclone_commands.py +0 -0
  516. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/rclone_config.py +0 -0
  517. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/rclone_installer.py +0 -0
  518. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/restore.py +0 -0
  519. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/schemas.py +0 -0
  520. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/shares.py +0 -0
  521. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/snapshot.py +0 -0
  522. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/transfer.py +0 -0
  523. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/upload.py +0 -0
  524. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/upload_command.py +0 -0
  525. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/webdav.py +0 -0
  526. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/webdav_transfer.py +0 -0
  527. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/cloud/workspace.py +0 -0
  528. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/command_utils.py +0 -0
  529. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/config.py +0 -0
  530. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/db.py +0 -0
  531. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/format.py +0 -0
  532. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/hook.py +0 -0
  533. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/import_chatgpt.py +0 -0
  534. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/import_claude_conversations.py +0 -0
  535. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/import_claude_projects.py +0 -0
  536. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/import_memory_json.py +0 -0
  537. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/inspect.py +0 -0
  538. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/man.py +0 -0
  539. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/mcp.py +0 -0
  540. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/orphans.py +0 -0
  541. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/project.py +0 -0
  542. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/routing.py +0 -0
  543. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/schema.py +0 -0
  544. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/status.py +0 -0
  545. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/tool.py +0 -0
  546. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/commands/workspace.py +0 -0
  547. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/container.py +0 -0
  548. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/main.py +0 -0
  549. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/cli/promo.py +0 -0
  550. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/config.py +0 -0
  551. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/config_logging.py +0 -0
  552. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/config_migrations.py +0 -0
  553. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/config_models.py +0 -0
  554. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/db.py +0 -0
  555. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/deps/__init__.py +0 -0
  556. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/deps/config.py +0 -0
  557. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/deps/db.py +0 -0
  558. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/deps/importers.py +0 -0
  559. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/deps/projects.py +0 -0
  560. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/deps/read_cache.py +0 -0
  561. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/deps/repositories.py +0 -0
  562. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/deps/services.py +0 -0
  563. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/file_utils.py +0 -0
  564. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/__init__.py +0 -0
  565. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/_uuid7.py +0 -0
  566. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/adapters/__init__.py +0 -0
  567. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/adapters/base.py +0 -0
  568. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/adapters/claude.py +0 -0
  569. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/adapters/codex.py +0 -0
  570. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/archive.py +0 -0
  571. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/envelope.py +0 -0
  572. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/inbox.py +0 -0
  573. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/hooks/project_ref.py +0 -0
  574. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/ignore_utils.py +0 -0
  575. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/importers/__init__.py +0 -0
  576. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/importers/base.py +0 -0
  577. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/importers/chatgpt_importer.py +0 -0
  578. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/importers/claude_conversations_importer.py +0 -0
  579. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/importers/claude_projects_importer.py +0 -0
  580. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/importers/memory_json_importer.py +0 -0
  581. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/importers/project_zip_import.py +0 -0
  582. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/importers/utils.py +0 -0
  583. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/__init__.py +0 -0
  584. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/event_operations.py +0 -0
  585. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/filesystem.py +0 -0
  586. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/inline_operations.py +0 -0
  587. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/local_dependencies.py +0 -0
  588. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/local_moves.py +0 -0
  589. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/local_notes.py +0 -0
  590. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/local_project.py +0 -0
  591. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/local_runtime.py +0 -0
  592. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/local_schedulers.py +0 -0
  593. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/local_watch.py +0 -0
  594. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/note_content_materialization.py +0 -0
  595. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/project_indexing.py +0 -0
  596. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/repository_project_resolution.py +0 -0
  597. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/schedulers.py +0 -0
  598. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/storage_events.py +0 -0
  599. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/watch_coordinator.py +0 -0
  600. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/index/watch_service.py +0 -0
  601. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/__init__.py +0 -0
  602. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/accepted_note_enqueue_runner.py +0 -0
  603. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/accepted_note_mutation_runner.py +0 -0
  604. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/accepted_note_search.py +0 -0
  605. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/accepted_note_write_runner.py +0 -0
  606. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/batch_indexer.py +0 -0
  607. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/batching.py +0 -0
  608. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/change_detector.py +0 -0
  609. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/change_planning.py +0 -0
  610. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/directory_delete_runner.py +0 -0
  611. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/embedding_index_planning.py +0 -0
  612. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/external_file_delete_runner.py +0 -0
  613. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/file_batch_runner.py +0 -0
  614. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/file_index_checking.py +0 -0
  615. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/file_index_planning.py +0 -0
  616. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/file_indexer.py +0 -0
  617. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/forward_reference_resolution.py +0 -0
  618. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/index_batch_runtime.py +0 -0
  619. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/index_file_runner.py +0 -0
  620. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/index_file_runtime.py +0 -0
  621. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/input_file_adaptation.py +0 -0
  622. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/job_payloads.py +0 -0
  623. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/link_resolution.py +0 -0
  624. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/models.py +0 -0
  625. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/note_content_batch_reconciliation.py +0 -0
  626. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/note_content_read_repair_runner.py +0 -0
  627. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/note_content_reconciler.py +0 -0
  628. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/note_content_reconciliation.py +0 -0
  629. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/note_file_delete_runner.py +0 -0
  630. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/note_materialization_runner.py +0 -0
  631. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/orphan_cleanup.py +0 -0
  632. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/progress.py +0 -0
  633. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_delete_acceptance.py +0 -0
  634. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_delete_runner.py +0 -0
  635. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_index_coordinator.py +0 -0
  636. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_index_maintenance.py +0 -0
  637. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_index_progress.py +0 -0
  638. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_index_runtime.py +0 -0
  639. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_index_workflow.py +0 -0
  640. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_index_workflow_models.py +0 -0
  641. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_index_workflow_stale.py +0 -0
  642. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/project_index_workflow_updates.py +0 -0
  643. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/relation_persistence.py +0 -0
  644. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/indexing/relation_resolution.py +0 -0
  645. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/man/basic-memory.1 +0 -0
  646. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/man/bm.1 +0 -0
  647. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/markdown/__init__.py +0 -0
  648. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/markdown/entity_parser.py +0 -0
  649. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/markdown/markdown_processor.py +0 -0
  650. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/markdown/schemas.py +0 -0
  651. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/markdown/utils.py +0 -0
  652. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/__init__.py +0 -0
  653. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/async_client.py +0 -0
  654. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/client_info.py +0 -0
  655. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/clients/__init__.py +0 -0
  656. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/clients/directory.py +0 -0
  657. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/clients/inspect.py +0 -0
  658. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/clients/knowledge.py +0 -0
  659. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/clients/memory.py +0 -0
  660. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/clients/project.py +0 -0
  661. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/clients/resource.py +0 -0
  662. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/clients/schema.py +0 -0
  663. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/clients/search.py +0 -0
  664. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/container.py +0 -0
  665. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/note_reads.py +0 -0
  666. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/project_context.py +0 -0
  667. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/project_context_identifiers.py +0 -0
  668. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/prompts/__init__.py +0 -0
  669. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/prompts/ai_assistant_guide.py +0 -0
  670. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/prompts/continue_conversation.py +0 -0
  671. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/prompts/getting_started.py +0 -0
  672. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/prompts/recent_activity.py +0 -0
  673. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/prompts/search.py +0 -0
  674. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/prompts/utils.py +0 -0
  675. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/resources/__init__.py +0 -0
  676. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/resources/ai_assistant_guide.md +0 -0
  677. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/resources/project_info.py +0 -0
  678. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/server.py +0 -0
  679. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/__init__.py +0 -0
  680. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/basic_memory_diagnostics.py +0 -0
  681. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/build_context.py +0 -0
  682. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/chatgpt_tools.py +0 -0
  683. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/delete_note.py +0 -0
  684. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/edit_note.py +0 -0
  685. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/list_directory.py +0 -0
  686. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/move_note.py +0 -0
  687. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/project_management.py +0 -0
  688. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/read_content.py +0 -0
  689. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/read_note.py +0 -0
  690. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/recent_activity.py +0 -0
  691. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/schema.py +0 -0
  692. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/search.py +0 -0
  693. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/ui_sdk.py +0 -0
  694. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/utils.py +0 -0
  695. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/view_note.py +0 -0
  696. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/tools/workspaces.py +0 -0
  697. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/ui/__init__.py +0 -0
  698. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/ui/html/note-preview-mcp-ui.html +0 -0
  699. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/ui/html/note-preview-tool-ui.html +0 -0
  700. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/ui/html/note-preview-vanilla.html +0 -0
  701. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/ui/html/search-results-mcp-ui.html +0 -0
  702. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/ui/html/search-results-tool-ui.html +0 -0
  703. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/ui/html/search-results-vanilla.html +0 -0
  704. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/ui/sdk.py +0 -0
  705. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/ui/templates.py +0 -0
  706. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/mcp/workspace_project_index.py +0 -0
  707. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/migration_loop.py +0 -0
  708. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/models/__init__.py +0 -0
  709. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/models/base.py +0 -0
  710. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/models/knowledge.py +0 -0
  711. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/models/project.py +0 -0
  712. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/models/relation_search_refresh.py +0 -0
  713. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/picoschema/__init__.py +0 -0
  714. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/picoschema/diff.py +0 -0
  715. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/picoschema/inference.py +0 -0
  716. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/picoschema/parser.py +0 -0
  717. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/picoschema/resolver.py +0 -0
  718. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/picoschema/validator.py +0 -0
  719. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/project_resolver.py +0 -0
  720. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/read_cache/__init__.py +0 -0
  721. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/read_cache/contract.py +0 -0
  722. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/read_cache/invalidation.py +0 -0
  723. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/read_cache/keys.py +0 -0
  724. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/read_cache/lifecycle.py +0 -0
  725. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/read_cache/policy.py +0 -0
  726. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/read_cache/read_through.py +0 -0
  727. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/read_cache/redis.py +0 -0
  728. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/redaction.py +0 -0
  729. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/__init__.py +0 -0
  730. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/accepted_note_repositories.py +0 -0
  731. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/accepted_note_search_repository.py +0 -0
  732. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/accepted_note_search_row.py +0 -0
  733. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/accepted_note_vector_cleanup.py +0 -0
  734. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/embedding_provider.py +0 -0
  735. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/embedding_provider_factory.py +0 -0
  736. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/entity_repository.py +0 -0
  737. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/fastembed_provider.py +0 -0
  738. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/fastembed_rerank_provider.py +0 -0
  739. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/litellm_provider.py +0 -0
  740. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/litellm_rerank_provider.py +0 -0
  741. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/metadata_filters.py +0 -0
  742. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/milvus_config.py +0 -0
  743. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/milvus_index.py +0 -0
  744. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/milvus_repository.py +0 -0
  745. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/note_content_repository.py +0 -0
  746. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/note_file_vacate_repository.py +0 -0
  747. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/observation_repository.py +0 -0
  748. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/openai_provider.py +0 -0
  749. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/pgvector_index.py +0 -0
  750. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/prefixing_provider.py +0 -0
  751. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/project_info_repository.py +0 -0
  752. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/project_repository.py +0 -0
  753. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/relation_repository.py +0 -0
  754. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/repository.py +0 -0
  755. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/rerank_provider.py +0 -0
  756. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/rerank_provider_factory.py +0 -0
  757. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/search_index_row.py +0 -0
  758. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/search_query.py +0 -0
  759. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/search_repository.py +0 -0
  760. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/search_repository_base.py +0 -0
  761. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/search_trace.py +0 -0
  762. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/semantic_chunking.py +0 -0
  763. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/semantic_errors.py +0 -0
  764. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/semantic_vector_index.py +0 -0
  765. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/semantic_vector_index_factory.py +0 -0
  766. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/semantic_vector_sync.py +0 -0
  767. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/sqlite_search_repository.py +0 -0
  768. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/repository/sqlite_vec_index.py +0 -0
  769. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/__init__.py +0 -0
  770. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/accepted_note_changes.py +0 -0
  771. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/cleanup.py +0 -0
  772. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/job_payloads.py +0 -0
  773. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/jobs.py +0 -0
  774. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/mode.py +0 -0
  775. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/note_content.py +0 -0
  776. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/note_content_deletes.py +0 -0
  777. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/note_content_reads.py +0 -0
  778. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/note_content_responses.py +0 -0
  779. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/note_file_guards.py +0 -0
  780. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/note_materialization.py +0 -0
  781. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/note_materialization_planning.py +0 -0
  782. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/note_move.py +0 -0
  783. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/note_object_metadata.py +0 -0
  784. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/observed_index_files.py +0 -0
  785. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/process.py +0 -0
  786. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/projects.py +0 -0
  787. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/sample_notes.py +0 -0
  788. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/storage.py +0 -0
  789. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/storage_events.py +0 -0
  790. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/storage_project_resolution.py +0 -0
  791. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/vector_sync.py +0 -0
  792. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/runtime/workflows.py +0 -0
  793. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/__init__.py +0 -0
  794. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/base.py +0 -0
  795. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/cloud.py +0 -0
  796. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/delete.py +0 -0
  797. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/directory.py +0 -0
  798. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/importer.py +0 -0
  799. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/inspect.py +0 -0
  800. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/memory.py +0 -0
  801. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/project_index.py +0 -0
  802. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/project_info.py +0 -0
  803. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/prompt.py +0 -0
  804. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/request.py +0 -0
  805. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/response.py +0 -0
  806. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/schema.py +0 -0
  807. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/search.py +0 -0
  808. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/v2/__init__.py +0 -0
  809. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/v2/entity.py +0 -0
  810. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/v2/graph.py +0 -0
  811. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/schemas/v2/project_index.py +0 -0
  812. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/__init__.py +0 -0
  813. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/bulk_link_resolver.py +0 -0
  814. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/composition.py +0 -0
  815. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/context_service.py +0 -0
  816. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/directory_deletes.py +0 -0
  817. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/directory_service.py +0 -0
  818. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/entity_service.py +0 -0
  819. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/exceptions.py +0 -0
  820. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/file_service.py +0 -0
  821. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/initialization.py +0 -0
  822. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/link_resolver.py +0 -0
  823. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/note_content_reads.py +0 -0
  824. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/note_content_writes.py +0 -0
  825. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/note_preparation.py +0 -0
  826. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/project_deletes.py +0 -0
  827. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/project_service.py +0 -0
  828. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/retrieval_inspect.py +0 -0
  829. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/search_service.py +0 -0
  830. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/services/service.py +0 -0
  831. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/telemetry.py +0 -0
  832. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/templates/prompts/continue_conversation.hbs +0 -0
  833. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/templates/prompts/search.hbs +0 -0
  834. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/utils.py +0 -0
  835. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/src/basic_memory/workspace_context.py +0 -0
  836. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/BENCHMARKS.md +0 -0
  837. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/bughunt_fixes/__init__.py +0 -0
  838. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/bughunt_fixes/test_cli_tool_read_note_security_error.py +0 -0
  839. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/bughunt_fixes/test_cli_tool_recent_activity_page_size.py +0 -0
  840. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/bughunt_fixes/test_cli_tool_search_notes_category.py +0 -0
  841. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/bughunt_fixes/test_cli_tool_write_note_parity.py +0 -0
  842. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/bughunt_fixes/test_move_note_edge_cases.py +0 -0
  843. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/bughunt_fixes/test_navigation_pagination_integration.py +0 -0
  844. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/bughunt_fixes/test_parse_tags_comma_split_integration.py +0 -0
  845. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_cli_tool_delete_note_integration.py +0 -0
  846. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_cli_tool_edit_note_integration.py +0 -0
  847. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_cli_tool_json_failure_integration.py +0 -0
  848. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_cli_tool_json_integration.py +0 -0
  849. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_cli_tool_write_note_type_integration.py +0 -0
  850. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_project_commands_integration.py +0 -0
  851. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_routing_integration.py +0 -0
  852. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_search_notes_meta_integration.py +0 -0
  853. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_status_wait_integration.py +0 -0
  854. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/cli/test_version_integration.py +0 -0
  855. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/compare_search_benchmarks.py +0 -0
  856. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-01.md +0 -0
  857. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-02.md +0 -0
  858. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-03.md +0 -0
  859. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-04.md +0 -0
  860. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-05.md +0 -0
  861. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-06.md +0 -0
  862. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-07.md +0 -0
  863. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-08.md +0 -0
  864. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-09.md +0 -0
  865. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-10.md +0 -0
  866. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-11.md +0 -0
  867. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-12.md +0 -0
  868. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-13.md +0 -0
  869. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-14.md +0 -0
  870. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-15.md +0 -0
  871. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-16.md +0 -0
  872. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-17.md +0 -0
  873. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-18.md +0 -0
  874. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-19.md +0 -0
  875. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/people/drift-person-20.md +0 -0
  876. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/drift/schema/Person.md +0 -0
  877. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/edge-cases/array-single.md +0 -0
  878. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/edge-cases/empty-note.md +0 -0
  879. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/edge-cases/explicit-overrides-type.md +0 -0
  880. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/edge-cases/inline-and-type.md +0 -0
  881. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/edge-cases/no-frontmatter.md +0 -0
  882. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/edge-cases/relation-only.md +0 -0
  883. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/edge-cases/type-no-schema.md +0 -0
  884. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/edge-cases/unicode-fields.md +0 -0
  885. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/ada-lovelace.md +0 -0
  886. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/alan-turing.md +0 -0
  887. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/anders-hejlsberg.md +0 -0
  888. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/andrej-karpathy.md +0 -0
  889. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/barbara-liskov.md +0 -0
  890. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/bjarne-stroustrup.md +0 -0
  891. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/brendan-eich.md +0 -0
  892. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/claude-shannon.md +0 -0
  893. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/dennis-ritchie.md +0 -0
  894. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/dijkstra.md +0 -0
  895. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/donald-knuth.md +0 -0
  896. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/fei-fei-li.md +0 -0
  897. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/geoffrey-hinton.md +0 -0
  898. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/grace-hopper.md +0 -0
  899. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/guido-van-rossum.md +0 -0
  900. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/james-gosling.md +0 -0
  901. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/john-carmack.md +0 -0
  902. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/ken-thompson.md +0 -0
  903. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/larry-page.md +0 -0
  904. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/leslie-lamport.md +0 -0
  905. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/linus-torvalds.md +0 -0
  906. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/margaret-hamilton.md +0 -0
  907. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/rasmus-lerdorf.md +0 -0
  908. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/richard-stallman.md +0 -0
  909. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/rob-pike.md +0 -0
  910. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/satoshi-nakamoto.md +0 -0
  911. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/tim-berners-lee.md +0 -0
  912. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/vint-cerf.md +0 -0
  913. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/yann-lecun.md +0 -0
  914. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/inference/people/yukihiro-matsumoto.md +0 -0
  915. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/schemas/Book.md +0 -0
  916. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/schemas/InvalidOffSchema.md +0 -0
  917. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/schemas/Meeting.md +0 -0
  918. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/schemas/Person.md +0 -0
  919. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/schemas/SoftwareProject.md +0 -0
  920. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/schemas/StrictSchema.md +0 -0
  921. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/valid/basic-memory.md +0 -0
  922. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/valid/explicit-ref-note.md +0 -0
  923. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/valid/no-schema-note.md +0 -0
  924. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/valid/paul-graham.md +0 -0
  925. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/valid/rich-hickey.md +0 -0
  926. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/valid/standup-2024-01-15.md +0 -0
  927. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/warnings/extra-observations.md +0 -0
  928. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/warnings/missing-multiple.md +0 -0
  929. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/warnings/missing-required.md +0 -0
  930. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/fixtures/schema/warnings/wrong-enum-value.md +0 -0
  931. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_build_context_underscore.py +0 -0
  932. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_build_context_validation.py +0 -0
  933. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_chatgpt_tools_integration.py +0 -0
  934. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_concurrent_write_integration.py +0 -0
  935. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_default_project_mode_integration.py +0 -0
  936. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_delete_directory_integration.py +0 -0
  937. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_delete_note_integration.py +0 -0
  938. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_edit_note_integration.py +0 -0
  939. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_lifespan_shutdown_sync_task_cancellation_integration.py +0 -0
  940. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_list_directory_integration.py +0 -0
  941. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_long_relation_type_integration.py +0 -0
  942. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_move_directory_integration.py +0 -0
  943. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_move_note_integration.py +0 -0
  944. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_observation_permalink_collision_integration.py +0 -0
  945. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_output_format_json_integration.py +0 -0
  946. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_pagination_integration.py +0 -0
  947. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_param_aliases_integration.py +0 -0
  948. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_permalink_collision_integration.py +0 -0
  949. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_project_management_integration.py +0 -0
  950. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_project_state_sync_integration.py +0 -0
  951. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_read_content_integration.py +0 -0
  952. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_read_note_integration.py +0 -0
  953. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_recreate_project_indexing_integration.py +0 -0
  954. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_search_integration.py +0 -0
  955. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_search_note_types_case_insensitive.py +0 -0
  956. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_single_project_mcp_integration.py +0 -0
  957. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_smoke_integration.py +0 -0
  958. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_string_params_integration.py +0 -0
  959. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_ui_sdk_integration.py +0 -0
  960. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_workspace_permalink_integration.py +0 -0
  961. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_write_note_integration.py +0 -0
  962. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/mcp/test_write_note_type_integration.py +0 -0
  963. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/read_cache/conftest.py +0 -0
  964. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/read_cache/test_api_read_cache.py +0 -0
  965. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/read_cache/test_materialization_invalidation.py +0 -0
  966. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/read_cache/test_mcp_read_cache.py +0 -0
  967. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/read_cache/test_read_cache_benchmark.py +0 -0
  968. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/read_cache/test_redis_read_cache.py +0 -0
  969. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/read_cache/test_runtime_invalidation.py +0 -0
  970. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/read_cache/test_search_read_cache.py +0 -0
  971. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/__init__.py +0 -0
  972. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/corpus.py +0 -0
  973. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/litellm_live_harness.py +0 -0
  974. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/metrics.py +0 -0
  975. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/report.py +0 -0
  976. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_embedding_provider_reuse.py +0 -0
  977. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_litellm_live_harness.py +0 -0
  978. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_litellm_live_models.py +0 -0
  979. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_milvus_lite.py +0 -0
  980. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_multiterm_semantic_queries.py +0 -0
  981. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_real_fastembed_reranker.py +0 -0
  982. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_reranker_latency.py +0 -0
  983. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_reranker_quality.py +0 -0
  984. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_search_diagnostics.py +0 -0
  985. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_semantic_coverage.py +0 -0
  986. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/semantic/test_semantic_quality.py +0 -0
  987. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_db_wal_mode.py +0 -0
  988. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_embedding_status_vec0.py +0 -0
  989. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_note_file_vacate_atomicity.py +0 -0
  990. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_note_materialization_lock_order.py +0 -0
  991. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_picoschema/__init__.py +0 -0
  992. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_picoschema/conftest.py +0 -0
  993. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_picoschema/helpers.py +0 -0
  994. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_picoschema/test_diff_integration.py +0 -0
  995. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_picoschema/test_inference_integration.py +0 -0
  996. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_picoschema/test_parser_integration.py +0 -0
  997. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_picoschema/test_validator_integration.py +0 -0
  998. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_postgres_dispose_cycle.py +0 -0
  999. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_project_index_delete_materialization_race.py +0 -0
  1000. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_relation_generation_concurrency.py +0 -0
  1001. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/test-int/test_search_performance_benchmark.py +0 -0
  1002. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/Non-MarkdownFileSupport.pdf +0 -0
  1003. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/README.md +0 -0
  1004. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/Screenshot.png +0 -0
  1005. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/__init__.py +0 -0
  1006. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/test_container.py +0 -0
  1007. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/__init__.py +0 -0
  1008. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/conftest.py +0 -0
  1009. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_accepted_note_atomicity.py +0 -0
  1010. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_directory_router.py +0 -0
  1011. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_entity_observation_lock_order.py +0 -0
  1012. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_importer_router.py +0 -0
  1013. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_inspect_router.py +0 -0
  1014. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_knowledge_resolution_contract.py +0 -0
  1015. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_knowledge_router.py +0 -0
  1016. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_knowledge_router_telemetry.py +0 -0
  1017. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_memory_hydration.py +0 -0
  1018. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_memory_router.py +0 -0
  1019. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_orphan_router.py +0 -0
  1020. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_project_index_command.py +0 -0
  1021. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_project_router.py +0 -0
  1022. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_prompt_router.py +0 -0
  1023. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_resource_router.py +0 -0
  1024. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_schema_router.py +0 -0
  1025. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_search_hydration.py +0 -0
  1026. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_search_router.py +0 -0
  1027. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_search_router_telemetry.py +0 -0
  1028. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_utils_telemetry.py +0 -0
  1029. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/api/v2/test_workspace_permalink_headers.py +0 -0
  1030. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/cloud/test_bmignore_sync_filter_refresh.py +0 -0
  1031. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/cloud/test_cloud_api_client_and_utils.py +0 -0
  1032. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/cloud/test_project_sync_command.py +0 -0
  1033. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/cloud/test_rclone_config_and_bmignore_filters.py +0 -0
  1034. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/cloud/test_rclone_installer.py +0 -0
  1035. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/cloud/test_upload_command_routing.py +0 -0
  1036. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/cloud/test_upload_path.py +0 -0
  1037. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/cloud/test_webdav_client.py +0 -0
  1038. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/cloud/test_webdav_transfer.py +0 -0
  1039. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/conftest.py +0 -0
  1040. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_analytics.py +0 -0
  1041. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_auth_cli_auth.py +0 -0
  1042. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_ci_commands.py +0 -0
  1043. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cli_container.py +0 -0
  1044. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cli_exit.py +0 -0
  1045. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cli_schema.py +0 -0
  1046. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cli_telemetry.py +0 -0
  1047. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cli_tool_exit.py +0 -0
  1048. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cli_tool_json_output.py +0 -0
  1049. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cli_tool_rich_output.py +0 -0
  1050. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cli_tools.py +0 -0
  1051. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cloud_authentication.py +0 -0
  1052. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cloud_promo.py +0 -0
  1053. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_cloud_status.py +0 -0
  1054. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_coding_session_context.py +0 -0
  1055. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_command_utils.py +0 -0
  1056. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_config_command.py +0 -0
  1057. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_db_reindex.py +0 -0
  1058. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_db_reset_exit.py +0 -0
  1059. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_db_reset_zombie_check.py +0 -0
  1060. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_hook_command.py +0 -0
  1061. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_ignore_utils.py +0 -0
  1062. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_import_chatgpt.py +0 -0
  1063. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_import_claude_conversations.py +0 -0
  1064. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_import_claude_projects.py +0 -0
  1065. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_import_memory_json.py +0 -0
  1066. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_inspect_command.py +0 -0
  1067. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_json_output.py +0 -0
  1068. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_man_command.py +0 -0
  1069. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_orphans_command.py +0 -0
  1070. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_project_add_with_local_path.py +0 -0
  1071. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_project_info_cloud_status.py +0 -0
  1072. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_project_info_errors.py +0 -0
  1073. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_project_list_and_ls.py +0 -0
  1074. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_project_remove_errors.py +0 -0
  1075. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_project_set_cloud_local.py +0 -0
  1076. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_restore_commands.py +0 -0
  1077. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_routing.py +0 -0
  1078. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_share_commands.py +0 -0
  1079. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_snapshot_commands.py +0 -0
  1080. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_status_wait_timeout.py +0 -0
  1081. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_update_command.py +0 -0
  1082. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_upload.py +0 -0
  1083. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_workspace_commands.py +0 -0
  1084. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cli/test_workspace_stub.py +0 -0
  1085. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cloud/test_cloud_services.py +0 -0
  1086. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cloud/test_note_content_materialization.py +0 -0
  1087. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cloud/test_note_content_read_service.py +0 -0
  1088. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/cloud/test_project_deletes.py +0 -0
  1089. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/db/test_issue_254_foreign_key_constraints.py +0 -0
  1090. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/db/test_memory_db_session_isolation.py +0 -0
  1091. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/db/test_semantic_search_startup.py +0 -0
  1092. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/db/test_uvloop_policy.py +0 -0
  1093. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/conftest.py +0 -0
  1094. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/fixtures/claude_pre_compact.json +0 -0
  1095. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/fixtures/claude_session_start.json +0 -0
  1096. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/fixtures/codex_pre_compact.json +0 -0
  1097. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/fixtures/codex_session_start.json +0 -0
  1098. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/test_adapters.py +0 -0
  1099. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/test_archive.py +0 -0
  1100. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/test_envelope.py +0 -0
  1101. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/test_inbox.py +0 -0
  1102. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/hooks/test_uuid7.py +0 -0
  1103. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/importers/test_conversation_indexing.py +0 -0
  1104. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/importers/test_importer_base.py +0 -0
  1105. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/importers/test_importer_utils.py +0 -0
  1106. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/importers/test_project_zip_import.py +0 -0
  1107. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_filesystem_events.py +0 -0
  1108. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_inline_storage_event_processor.py +0 -0
  1109. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_accepted_note_repositories.py +0 -0
  1110. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_inline_result_recorder.py +0 -0
  1111. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_markdown_file_indexer.py +0 -0
  1112. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_move_content_updates.py +0 -0
  1113. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_project_index.py +0 -0
  1114. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_project_scan_parity.py +0 -0
  1115. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_project_vector_cleaner_wiring.py +0 -0
  1116. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_reconcile_file_reader.py +0 -0
  1117. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_runtime.py +0 -0
  1118. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_scheduler_task_failure.py +0 -0
  1119. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_schedulers.py +0 -0
  1120. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_watch_ignore_parity.py +0 -0
  1121. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_watch_orchestration.py +0 -0
  1122. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_watch_regular_file_parity.py +0 -0
  1123. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_watch_semantic_embedding.py +0 -0
  1124. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_local_watch_stress_parity.py +0 -0
  1125. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_project_index_surface.py +0 -0
  1126. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_repository_storage_event_project_resolution.py +0 -0
  1127. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_storage_event_operation_processor.py +0 -0
  1128. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_storage_event_orchestration.py +0 -0
  1129. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_watch_coordinator.py +0 -0
  1130. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/index/test_watch_service.py +0 -0
  1131. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_accepted_note_enqueue_runner.py +0 -0
  1132. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_accepted_note_mutation_runner.py +0 -0
  1133. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_accepted_note_search.py +0 -0
  1134. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_accepted_note_write_runner.py +0 -0
  1135. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_batch_index_search_writer.py +0 -0
  1136. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_batch_indexer.py +0 -0
  1137. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_batching.py +0 -0
  1138. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_change_planning.py +0 -0
  1139. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_directory_delete_runner.py +0 -0
  1140. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_embedding_index_planning.py +0 -0
  1141. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_external_file_delete_runner.py +0 -0
  1142. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_file_batch_runner.py +0 -0
  1143. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_file_index_checking.py +0 -0
  1144. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_file_index_models.py +0 -0
  1145. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_file_index_planning.py +0 -0
  1146. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_file_indexer.py +0 -0
  1147. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_forward_reference_resolution.py +0 -0
  1148. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_index_batch_runtime.py +0 -0
  1149. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_index_file_runner.py +0 -0
  1150. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_indexing_job_payloads.py +0 -0
  1151. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_input_file_adaptation.py +0 -0
  1152. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_link_resolution.py +0 -0
  1153. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_models.py +0 -0
  1154. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_note_content_batch_reconciliation.py +0 -0
  1155. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_note_content_read_repair_runner.py +0 -0
  1156. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_note_content_reconciler.py +0 -0
  1157. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_note_content_reconciliation.py +0 -0
  1158. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_note_file_delete_runner.py +0 -0
  1159. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_note_materialization_runner.py +0 -0
  1160. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_orphan_cleanup.py +0 -0
  1161. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_progress_models.py +0 -0
  1162. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_project_delete_acceptance.py +0 -0
  1163. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_project_delete_runner.py +0 -0
  1164. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_project_index_coordinator.py +0 -0
  1165. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_project_index_maintenance.py +0 -0
  1166. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_project_index_progress.py +0 -0
  1167. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_project_index_runner.py +0 -0
  1168. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_project_index_runtime.py +0 -0
  1169. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_project_index_workflow.py +0 -0
  1170. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_relation_persistence.py +0 -0
  1171. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_relation_resolution.py +0 -0
  1172. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_relation_resolution_scaling.py +0 -0
  1173. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_relation_search_refresh_retry.py +0 -0
  1174. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/indexing/test_vector_sync_planning.py +0 -0
  1175. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/__init__.py +0 -0
  1176. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_date_frontmatter_parsing.py +0 -0
  1177. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_entity_parser.py +0 -0
  1178. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_entity_parser_error_handling.py +0 -0
  1179. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_markdown_plugins.py +0 -0
  1180. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_markdown_processor.py +0 -0
  1181. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_markdown_utils.py +0 -0
  1182. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_observation_edge_cases.py +0 -0
  1183. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_parser_edge_cases.py +0 -0
  1184. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/markdown/test_task_detection.py +0 -0
  1185. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/clients/__init__.py +0 -0
  1186. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/clients/test_clients.py +0 -0
  1187. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/conftest.py +0 -0
  1188. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_async_client_force_local.py +0 -0
  1189. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_async_client_modes.py +0 -0
  1190. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_async_client_telemetry.py +0 -0
  1191. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_client_info.py +0 -0
  1192. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_client_schema.py +0 -0
  1193. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_client_telemetry.py +0 -0
  1194. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_first_connect_onboarding.py +0 -0
  1195. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_mcp_container.py +0 -0
  1196. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_mcp_note_type_normalization.py +0 -0
  1197. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_obsidian_yaml_formatting.py +0 -0
  1198. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_project_context.py +0 -0
  1199. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_project_context_scoped_key.py +0 -0
  1200. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_project_context_telemetry.py +0 -0
  1201. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_prompt_tool_delegation.py +0 -0
  1202. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_prompts.py +0 -0
  1203. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_read_note_request_counts.py +0 -0
  1204. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_recent_activity_prompt_modes.py +0 -0
  1205. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_resources.py +0 -0
  1206. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_search_total_exactness.py +0 -0
  1207. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_server_lifespan_branches.py +0 -0
  1208. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_server_telemetry.py +0 -0
  1209. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_basic_memory_diagnostics.py +0 -0
  1210. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_build_context.py +0 -0
  1211. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_contracts.py +0 -0
  1212. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_delete_note.py +0 -0
  1213. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_edit_note.py +0 -0
  1214. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_json_output_modes.py +0 -0
  1215. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_list_directory.py +0 -0
  1216. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_move_note.py +0 -0
  1217. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_project_management.py +0 -0
  1218. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_read_content.py +0 -0
  1219. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_read_note.py +0 -0
  1220. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_recent_activity.py +0 -0
  1221. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_resource.py +0 -0
  1222. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_schema.py +0 -0
  1223. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_search.py +0 -0
  1224. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_telemetry.py +0 -0
  1225. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_utils.py +0 -0
  1226. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_utils_cloud_auth.py +0 -0
  1227. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_view_note.py +0 -0
  1228. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_workspace_management.py +0 -0
  1229. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_write_note.py +0 -0
  1230. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_write_note_kebab_filenames.py +0 -0
  1231. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_tool_write_note_metadata.py +0 -0
  1232. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_ui_sdk.py +0 -0
  1233. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_ui_templates.py +0 -0
  1234. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/test_workspace_permalink_resolution.py +0 -0
  1235. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/tools/test_chatgpt_tools.py +0 -0
  1236. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/tools/test_mutating_memory_url_routing.py +0 -0
  1237. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/mcp/tools/test_search_notes_multi_project.py +0 -0
  1238. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/picoschema/__init__.py +0 -0
  1239. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/picoschema/test_diff.py +0 -0
  1240. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/picoschema/test_inference.py +0 -0
  1241. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/picoschema/test_parser.py +0 -0
  1242. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/picoschema/test_resolver.py +0 -0
  1243. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/picoschema/test_validator.py +0 -0
  1244. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_accepted_note_search_repository.py +0 -0
  1245. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_accepted_pending_entity_repository.py +0 -0
  1246. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_chunk_inspection.py +0 -0
  1247. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_distance_to_similarity.py +0 -0
  1248. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_entity_repository.py +0 -0
  1249. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_entity_repository_upsert.py +0 -0
  1250. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_entity_upsert_issue_187.py +0 -0
  1251. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_explicit_session_transactions.py +0 -0
  1252. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_external_vector_cleanup.py +0 -0
  1253. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_fastembed_provider.py +0 -0
  1254. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_fastembed_rerank_provider.py +0 -0
  1255. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_hybrid_fusion.py +0 -0
  1256. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_litellm_provider.py +0 -0
  1257. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_litellm_rerank_provider.py +0 -0
  1258. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_metadata_filters.py +0 -0
  1259. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_metadata_filters_edge_cases.py +0 -0
  1260. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_milvus_config.py +0 -0
  1261. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_milvus_index.py +0 -0
  1262. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_milvus_repository.py +0 -0
  1263. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_note_content_repository.py +0 -0
  1264. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_note_file_vacate_repository.py +0 -0
  1265. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_observation_repository.py +0 -0
  1266. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_openai_provider.py +0 -0
  1267. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_pgvector_index.py +0 -0
  1268. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_postgres_search_repository_unit.py +0 -0
  1269. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_prefixing_provider.py +0 -0
  1270. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_project_info_repository.py +0 -0
  1271. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_project_repository.py +0 -0
  1272. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_relation_repository.py +0 -0
  1273. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_repository.py +0 -0
  1274. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_rerank_pipeline.py +0 -0
  1275. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_rerank_provider_factory.py +0 -0
  1276. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_search_index_row.py +0 -0
  1277. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_search_relaxation.py +0 -0
  1278. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_search_relaxation_unicode_classes.py +0 -0
  1279. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_search_relaxed_rendering.py +0 -0
  1280. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_search_repository_edit_bug_fix.py +0 -0
  1281. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_search_text_with_metadata_filters.py +0 -0
  1282. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_search_trace.py +0 -0
  1283. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_semantic_chunking.py +0 -0
  1284. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_semantic_search_base.py +0 -0
  1285. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_semantic_vector_index.py +0 -0
  1286. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_semantic_vector_sync.py +0 -0
  1287. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_sqlite_vector_search_repository.py +0 -0
  1288. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_vector_manifest_generation_ownership.py +0 -0
  1289. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_vector_pagination.py +0 -0
  1290. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/repository/test_vector_threshold.py +0 -0
  1291. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_accepted_note_response_planning.py +0 -0
  1292. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_accepted_note_write_guards.py +0 -0
  1293. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_deleted_note_file_checksum.py +0 -0
  1294. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_deleted_note_response.py +0 -0
  1295. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_job_request_contracts.py +0 -0
  1296. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_note_content_read_planning.py +0 -0
  1297. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_note_content_store_materialization.py +0 -0
  1298. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_note_materialization_request_matching.py +0 -0
  1299. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_note_move_destination.py +0 -0
  1300. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_pending_note_materialization.py +0 -0
  1301. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_previous_materialized_note_file_delete.py +0 -0
  1302. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_process.py +0 -0
  1303. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_runtime_job_payloads.py +0 -0
  1304. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_sample_notes.py +0 -0
  1305. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/runtime/test_workflow_metadata.py +0 -0
  1306. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/schemas/test_base_timeframe_minimum.py +0 -0
  1307. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/schemas/test_memory_serialization.py +0 -0
  1308. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/schemas/test_memory_url.py +0 -0
  1309. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/schemas/test_memory_url_validation.py +0 -0
  1310. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/schemas/test_relation_response_reference_resolution.py +0 -0
  1311. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/schemas/test_schemas.py +0 -0
  1312. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/schemas/test_search.py +0 -0
  1313. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_bulk_link_resolver.py +0 -0
  1314. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_context_service.py +0 -0
  1315. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_directory_service.py +0 -0
  1316. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_entity_service.py +0 -0
  1317. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_entity_service_disable_permalinks.py +0 -0
  1318. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_entity_service_heading_boundaries.py +0 -0
  1319. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_entity_service_prepare.py +0 -0
  1320. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_entity_service_telemetry.py +0 -0
  1321. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_entity_service_write_result.py +0 -0
  1322. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_file_service.py +0 -0
  1323. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_initialization.py +0 -0
  1324. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_initialization_cloud_mode_branches.py +0 -0
  1325. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_link_resolver.py +0 -0
  1326. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_note_type_normalization.py +0 -0
  1327. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_project_removal_bug.py +0 -0
  1328. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_project_service.py +0 -0
  1329. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_project_service_cloud_info.py +0 -0
  1330. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_project_service_composition.py +0 -0
  1331. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_project_service_embedding_status.py +0 -0
  1332. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_project_service_operations.py +0 -0
  1333. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_search_service.py +0 -0
  1334. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_search_service_telemetry.py +0 -0
  1335. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_semantic_search.py +0 -0
  1336. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_semantic_timestamp_surfaces.py +0 -0
  1337. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/services/test_upsert_entity_optimization.py +0 -0
  1338. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_alembic_env.py +0 -0
  1339. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_architecture_boundaries.py +0 -0
  1340. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_claude_issue_triage.py +0 -0
  1341. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_coerce.py +0 -0
  1342. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_config.py +0 -0
  1343. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_config_load_side_effects.py +0 -0
  1344. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_deps.py +0 -0
  1345. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_migration_loop.py +0 -0
  1346. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_note_content_migration.py +0 -0
  1347. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_permalink_utils.py +0 -0
  1348. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_pr_title_workflow.py +0 -0
  1349. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_production_cascade_delete.py +0 -0
  1350. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_project_resolver.py +0 -0
  1351. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_rclone_commands.py +0 -0
  1352. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_read_cache_lifecycle.py +0 -0
  1353. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_read_cache_telemetry.py +0 -0
  1354. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_read_load_bench.py +0 -0
  1355. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_runtime.py +0 -0
  1356. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_runtime_observed_index_files.py +0 -0
  1357. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_runtime_storage_events.py +0 -0
  1358. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_runtime_storage_project_resolution.py +0 -0
  1359. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_semantic_vector_index_migration.py +0 -0
  1360. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/test_telemetry.py +0 -0
  1361. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/utils/test_file_utils.py +0 -0
  1362. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/utils/test_frontmatter_obsidian_compatible.py +0 -0
  1363. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/utils/test_parse_tags.py +0 -0
  1364. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/utils/test_permalink_formatting.py +0 -0
  1365. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/utils/test_setup_logging.py +0 -0
  1366. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/utils/test_timezone_utils.py +0 -0
  1367. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/utils/test_utf8_handling.py +0 -0
  1368. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/utils/test_validate_project_path.py +0 -0
  1369. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/tests/utils/test_workspace_context.py +0 -0
  1370. {basic_memory-0.23.0 → basic_memory-0.23.1.dev20}/uv.lock +0 -0
@@ -0,0 +1,36 @@
1
+ name: MCP Registry Publish
2
+
3
+ # Publishes server.json to the official MCP Registry. GitHub Actions OIDC
4
+ # authenticates this workflow as the repository owner, which grants the
5
+ # io.github.basicmachines-co/* namespace directly — no personal login or
6
+ # public-org-membership derivation involved (the manual `mcp-publisher login
7
+ # github` path proved flaky there; see the v0.23.0 release notes on #1288).
8
+ #
9
+ # Run manually after a release, once the version is live on PyPI.
10
+
11
+ on:
12
+ workflow_dispatch:
13
+
14
+ env:
15
+ FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true"
16
+
17
+ jobs:
18
+ publish:
19
+ runs-on: ubuntu-latest
20
+ permissions:
21
+ contents: read
22
+ id-token: write
23
+
24
+ steps:
25
+ - uses: actions/checkout@v6
26
+
27
+ - name: Install mcp-publisher
28
+ run: |
29
+ curl -fsSL "https://github.com/modelcontextprotocol/registry/releases/latest/download/mcp-publisher_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/').tar.gz" \
30
+ | tar xz mcp-publisher
31
+ sudo mv mcp-publisher /usr/local/bin/
32
+
33
+ - name: Publish server.json
34
+ run: |
35
+ mcp-publisher login github-oidc
36
+ mcp-publisher publish
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: basic-memory
3
- Version: 0.23.0
3
+ Version: 0.23.1.dev20
4
4
  Summary: Local-first knowledge management combining Zettelkasten with knowledge graphs
5
5
  Project-URL: Homepage, https://github.com/basicmachines-co/basic-memory
6
6
  Project-URL: Repository, https://github.com/basicmachines-co/basic-memory
@@ -166,6 +166,17 @@ Explicit relations:
166
166
  - 'in response to' [[Incident Review]]
167
167
  ```
168
168
 
169
+ When the text before `[[` is ordinary prose rather than a relation type, add
170
+ `#bm:links_to` to force the reference to use the implicit `links_to` relation:
171
+
172
+ ```markdown
173
+ - Mother [[Alice]] #bm:links_to
174
+ ```
175
+
176
+ The directive is parser metadata and is not included in the observation or
177
+ relation context. It is especially useful when a single-token prose prefix
178
+ would otherwise be interpreted as an explicit relation type.
179
+
169
180
  Bare wiki links and prose list items create implicit `links_to` relations:
170
181
 
171
182
  ```markdown
@@ -521,7 +521,6 @@ doctor:
521
521
  TMP_HOME=$(mktemp -d)
522
522
  TMP_CONFIG=$(mktemp -d)
523
523
  HOME="$TMP_HOME" \
524
- BASIC_MEMORY_ENV=test \
525
524
  BASIC_MEMORY_HOME="$TMP_HOME/basic-memory" \
526
525
  BASIC_MEMORY_CONFIG_DIR="$TMP_CONFIG" \
527
526
  ./.venv/bin/python -m basic_memory.cli.main doctor --local
@@ -706,6 +705,8 @@ release version:
706
705
  .claude-plugin/marketplace.json \
707
706
  plugins/claude-code/.claude-plugin/plugin.json \
708
707
  plugins/claude-code/.claude-plugin/marketplace.json \
708
+ plugins/claude-code/hooks/session_start.py \
709
+ plugins/claude-code/hooks/pre_compact.py \
709
710
  plugins/codex/.codex-plugin/plugin.json \
710
711
  plugins/codex/hooks/session_start.py \
711
712
  plugins/codex/hooks/pre_compact.py \
@@ -826,6 +827,8 @@ beta version:
826
827
  .claude-plugin/marketplace.json \
827
828
  plugins/claude-code/.claude-plugin/plugin.json \
828
829
  plugins/claude-code/.claude-plugin/marketplace.json \
830
+ plugins/claude-code/hooks/session_start.py \
831
+ plugins/claude-code/hooks/pre_compact.py \
829
832
  plugins/codex/.codex-plugin/plugin.json \
830
833
  plugins/codex/hooks/session_start.py \
831
834
  plugins/codex/hooks/pre_compact.py \
@@ -1,7 +1,14 @@
1
1
  #!/usr/bin/env -S uv run --quiet --script
2
2
  # /// script
3
3
  # requires-python = ">=3.12"
4
- # dependencies = ["basic-memory>=0.22.1"]
4
+ # dependencies = [
5
+ # "basic-memory>=0.23.0",
6
+ # # Direct pre-release pin so old uv resolves basic-memory (which
7
+ # # requires this exact beta transitively) without enabling
8
+ # # pre-releases for basic-memory itself. Keep in lockstep with
9
+ # # core pyproject's fastmcp pin.
10
+ # "fastmcp==4.0.0b1",
11
+ # ]
5
12
  # ///
6
13
  """PreCompact hook — the entire hook. All logic (settings resolution, the
7
14
  extractive checkpoint note, lifecycle-envelope capture) lives in the released
@@ -1,7 +1,14 @@
1
1
  #!/usr/bin/env -S uv run --quiet --script
2
2
  # /// script
3
3
  # requires-python = ">=3.12"
4
- # dependencies = ["basic-memory>=0.22.1"]
4
+ # dependencies = [
5
+ # "basic-memory>=0.23.0",
6
+ # # Direct pre-release pin so old uv resolves basic-memory (which
7
+ # # requires this exact beta transitively) without enabling
8
+ # # pre-releases for basic-memory itself. Keep in lockstep with
9
+ # # core pyproject's fastmcp pin.
10
+ # "fastmcp==4.0.0b1",
11
+ # ]
5
12
  # ///
6
13
  """SessionStart hook — the entire hook. All logic (settings resolution, the
7
14
  context brief, lifecycle-envelope capture) lives in the released basic-memory
@@ -119,7 +119,7 @@ def test_dependency_floor_matches_package_version() -> None:
119
119
  # scripts/update_versions.py bumps this line at release; drift between the
120
120
  # script floor and the package version fails here, before a release lands.
121
121
  text = SCRIPT.read_text(encoding="utf-8")
122
- floors = re.findall(r'^# dependencies = \["basic-memory>=([^"]+)"\]$', text, re.MULTILINE)
122
+ floors = re.findall(r'^# "basic-memory>=([^"]+)",$', text, re.MULTILINE)
123
123
 
124
124
  assert floors == [__version__]
125
125
 
@@ -119,7 +119,7 @@ def test_dependency_floor_matches_package_version() -> None:
119
119
  # scripts/update_versions.py bumps this line at release; drift between the
120
120
  # script floor and the package version fails here, before a release lands.
121
121
  text = SCRIPT.read_text(encoding="utf-8")
122
- floors = re.findall(r'^# dependencies = \["basic-memory>=([^"]+)"\]$', text, re.MULTILINE)
122
+ floors = re.findall(r'^# "basic-memory>=([^"]+)",$', text, re.MULTILINE)
123
123
 
124
124
  assert floors == [__version__]
125
125
 
@@ -3,6 +3,10 @@
3
3
  # requires-python = ">=3.12"
4
4
  # dependencies = [
5
5
  # "basic-memory @ git+https://github.com/basicmachines-co/basic-memory@v0.23.0",
6
+ # # Direct pre-release pin so old uv resolves basic-memory (which
7
+ # # requires this exact beta transitively) without enabling
8
+ # # pre-releases broadly. Keep in lockstep with core pyproject.
9
+ # "fastmcp==4.0.0b1",
6
10
  # ]
7
11
  # ///
8
12
  """PreCompact hook launcher backed by a pinned Basic Memory revision.
@@ -3,6 +3,10 @@
3
3
  # requires-python = ">=3.12"
4
4
  # dependencies = [
5
5
  # "basic-memory @ git+https://github.com/basicmachines-co/basic-memory@v0.23.0",
6
+ # # Direct pre-release pin so old uv resolves basic-memory (which
7
+ # # requires this exact beta transitively) without enabling
8
+ # # pre-releases broadly. Keep in lockstep with core pyproject.
9
+ # "fastmcp==4.0.0b1",
6
10
  # ]
7
11
  # ///
8
12
  """SessionStart hook launcher backed by a pinned Basic Memory revision.
@@ -153,8 +153,8 @@ def _update_packages(version: str, *, dry_run: bool) -> None:
153
153
  for script in HOOK_SCRIPTS:
154
154
  update_text(
155
155
  script,
156
- r'^# dependencies = \["basic-memory>=[^"]+"\]$',
157
- f'# dependencies = ["basic-memory>={version}"]',
156
+ r'^# "basic-memory>=[^"]+",$',
157
+ f'# "basic-memory>={version}",',
158
158
  dry_run=dry_run,
159
159
  )
160
160
  update_text(
@@ -137,6 +137,20 @@ def validate_claude_plugin(plugin_dir: Path) -> None:
137
137
  for event in REQUIRED_HOOK_EVENTS:
138
138
  if event not in hooks:
139
139
  raise SystemExit(f"hooks/hooks.json: missing {event} hook")
140
+ # Trigger: the shims pin core's exact fastmcp beta so older uv can resolve
141
+ # basic-memory (pre-release transitives are refused there) without
142
+ # enabling pre-releases for basic-memory itself.
143
+ # Why: nothing else keeps the shim pin and core's pyproject in lockstep,
144
+ # and drift makes shim resolution conflict — which the fail-open contract
145
+ # turns into a silent hook no-op.
146
+ # Outcome: validation fails loudly when core moves its fastmcp pin without
147
+ # the shims following.
148
+ core_pyproject = (ROOT / "pyproject.toml").read_text(encoding="utf-8")
149
+ core_match = re.search(r'^\s*"fastmcp==([^"]+)",$', core_pyproject, re.MULTILINE)
150
+ if not core_match:
151
+ raise SystemExit("pyproject.toml: no exact fastmcp pin found")
152
+ core_fastmcp_pin = core_match.group(1)
153
+
140
154
  for rel in REQUIRED_HOOK_SCRIPTS:
141
155
  script = plugin_dir / rel
142
156
  if not script.exists():
@@ -145,9 +159,17 @@ def validate_claude_plugin(plugin_dir: Path) -> None:
145
159
  raise SystemExit(f"Hook script is not executable: {script}")
146
160
  text = script.read_text(encoding="utf-8")
147
161
  if "# /// script" not in text or not re.search(
148
- r'^# dependencies = \["basic-memory>=[^"]+"\]$', text, re.MULTILINE
162
+ r'^# "basic-memory>=[^"]+",$', text, re.MULTILINE
149
163
  ):
150
164
  raise SystemExit(f"Hook script missing PEP 723 basic-memory floor: {script}")
165
+ shim_pins = re.findall(r'^# "fastmcp==([^"]+)",$', text, re.MULTILINE)
166
+ if len(shim_pins) != 1:
167
+ raise SystemExit(f"Hook script missing exact fastmcp pin: {script}")
168
+ if shim_pins[0] != core_fastmcp_pin:
169
+ raise SystemExit(
170
+ f"{script}: fastmcp pin {shim_pins[0]} does not match "
171
+ f"core pyproject pin {core_fastmcp_pin}"
172
+ )
151
173
 
152
174
  # --- Output style ---
153
175
  output_style = plugin_dir / "output-styles/basic-memory.md"
@@ -0,0 +1,77 @@
1
+ """Index complete PostgreSQL note content for full-text search.
2
+
3
+ Revision ID: 7f6a2b8c9d10
4
+ Revises: 2d26b287813b
5
+ Create Date: 2026-08-24 22:00:00.000000
6
+
7
+ """
8
+
9
+ from typing import Sequence, Union
10
+
11
+ from alembic import op
12
+
13
+
14
+ # revision identifiers, used by Alembic.
15
+ revision: str = "7f6a2b8c9d10"
16
+ down_revision: Union[str, None] = "2d26b287813b"
17
+ branch_labels: Union[str, Sequence[str], None] = None
18
+ depends_on: Union[str, Sequence[str], None] = None
19
+
20
+
21
+ def upgrade() -> None:
22
+ """Index complete note bodies as bounded PostgreSQL FTS chunks."""
23
+ connection = op.get_bind()
24
+ if connection.dialect.name == "postgresql":
25
+ op.execute("""
26
+ CREATE TABLE search_index_fts_chunks (
27
+ project_id INTEGER NOT NULL,
28
+ search_index_id INTEGER NOT NULL,
29
+ search_index_type VARCHAR NOT NULL,
30
+ chunk_index INTEGER NOT NULL,
31
+ chunk_text TEXT NOT NULL,
32
+ textsearchable_index_col tsvector GENERATED ALWAYS AS (
33
+ to_tsvector('english', chunk_text)
34
+ ) STORED,
35
+ PRIMARY KEY (project_id, search_index_id, search_index_type, chunk_index),
36
+ FOREIGN KEY (search_index_id, search_index_type, project_id)
37
+ REFERENCES search_index(id, type, project_id)
38
+ ON UPDATE CASCADE ON DELETE CASCADE
39
+ )
40
+ """)
41
+ op.execute("""
42
+ -- PostgreSQL ignores lexemes at 2 KiB and above. Stepping 5,952
43
+ -- characters leaves a conservative 2,048-character overlap, so
44
+ -- every indexable lexeme split at one edge is complete in the next.
45
+ INSERT INTO search_index_fts_chunks (
46
+ project_id,
47
+ search_index_id,
48
+ search_index_type,
49
+ chunk_index,
50
+ chunk_text
51
+ )
52
+ SELECT
53
+ search_index.project_id,
54
+ search_index.id,
55
+ search_index.type,
56
+ (chunk_start - 1) / 5952,
57
+ substring(search_index.content_snippet FROM chunk_start FOR 8000)
58
+ FROM search_index
59
+ CROSS JOIN LATERAL generate_series(
60
+ 1,
61
+ length(search_index.content_snippet),
62
+ 5952
63
+ ) AS chunk_start
64
+ WHERE search_index.content_snippet IS NOT NULL
65
+ AND search_index.content_snippet <> ''
66
+ """)
67
+ op.execute("""
68
+ CREATE INDEX idx_search_index_fts_chunks_fts
69
+ ON search_index_fts_chunks USING gin(textsearchable_index_col)
70
+ """)
71
+
72
+
73
+ def downgrade() -> None:
74
+ """Remove the bounded full-content PostgreSQL FTS chunks."""
75
+ connection = op.get_bind()
76
+ if connection.dialect.name == "postgresql":
77
+ op.execute("DROP TABLE IF EXISTS search_index_fts_chunks")
@@ -221,6 +221,38 @@ def _preload_lazy_console_modules() -> None:
221
221
  """
222
222
  import rich._emoji_codes # noqa: F401
223
223
  import typer.rich_utils # noqa: F401
224
+ from rich.cells import cell_len
225
+
226
+ # Trigger: rich defers its Unicode cell-width table (`rich._unicode_data.
227
+ # unicode<version>`) until the first character it cannot measure with the
228
+ # ASCII fast path in `_cell_len`.
229
+ # Why: status messages echo captured `brew`/`uv` output, which carries
230
+ # non-ASCII characters (curly quotes, em dashes, warning glyphs), so the
231
+ # deferred import lands after the upgrade removed our files. Importing the
232
+ # module by name would hard-code a table version; calling `cell_len` uses
233
+ # rich's own resolution and honors UNICODE_VERSION like the print path does.
234
+ # Outcome: the table rich will reach for is resolved and cached up front.
235
+ cell_len("\u2500\u2018\u2713")
236
+
237
+
238
+ def print_update_status(console: Console, text: str, style: str) -> None:
239
+ """Print an update status line that cannot fail the command.
240
+
241
+ Trigger: the line is printed after an in-place upgrade may already have
242
+ replaced this installation on disk.
243
+ Why: `_preload_lazy_console_modules` can only preload the deferred imports
244
+ we know about today, and rich/typer are free to add more. By the time this
245
+ prints, the upgrade has already succeeded -- a status line must never be
246
+ what turns it into a traceback and a non-zero exit.
247
+ Outcome: fall back to a plain, unstyled write that needs no new imports.
248
+ """
249
+ try:
250
+ console.print(f"[{style}]{text}[/{style}]")
251
+ except Exception as exc:
252
+ logger.warning(
253
+ f"Rich console print failed after update, falling back to plain output: {exc}"
254
+ )
255
+ print(text)
224
256
 
225
257
 
226
258
  def _save_last_checked_timestamp(config_manager: ConfigManager, checked_at: datetime) -> None:
@@ -468,11 +500,11 @@ def maybe_run_periodic_auto_update(
468
500
  }:
469
501
  out = console or Console()
470
502
  if result.status == AutoUpdateStatus.UPDATED:
471
- out.print(f"[green]{result.message}[/green]")
503
+ print_update_status(out, f"{result.message}", "green")
472
504
  elif result.status == AutoUpdateStatus.FAILED:
473
505
  error_detail = f" {result.error}" if result.error else ""
474
- out.print(f"[yellow]{result.message}{error_detail}[/yellow]")
506
+ print_update_status(out, f"{result.message}{error_detail}", "yellow")
475
507
  elif result.message:
476
- out.print(f"[cyan]{result.message}[/cyan]")
508
+ print_update_status(out, f"{result.message}", "cyan")
477
509
 
478
510
  return result
@@ -81,6 +81,23 @@ async def _delete_doctor_project(
81
81
  await _delete_doctor_project_locally(project_name, project_id)
82
82
 
83
83
 
84
+ async def _read_materialized_api_note(api_file: Path, file_path: str) -> str:
85
+ """Wait for the accepted local write, then read its canonical file."""
86
+ # Deferred: importing the materialization runtime at CLI module load would slow every
87
+ # command, while doctor is the only command that needs to observe its write immediately.
88
+ from basic_memory.index.note_content_materialization import drain_pending_materializations
89
+
90
+ # Trigger: production accepts note content before its markdown file is materialized.
91
+ # Why: doctor verifies the complete DB -> file contract, not only write acceptance.
92
+ # Outcome: wait for the same deferred work drained at normal CLI shutdown before checking.
93
+ await drain_pending_materializations()
94
+
95
+ if not api_file.exists():
96
+ raise ValueError(f"API note file missing: {file_path}")
97
+
98
+ return api_file.read_text(encoding="utf-8")
99
+
100
+
84
101
  async def run_doctor() -> None:
85
102
  """Run local consistency checks for file <-> database flows."""
86
103
  # Deferred: the markdown parsing stack is only needed while the checks run,
@@ -132,10 +149,7 @@ async def run_doctor() -> None:
132
149
  api_result = await knowledge_client.create_entity(api_note.model_dump())
133
150
 
134
151
  api_file = project_path / api_result.file_path
135
- if not api_file.exists():
136
- raise ValueError(f"API note file missing: {api_result.file_path}")
137
-
138
- api_text = api_file.read_text(encoding="utf-8")
152
+ api_text = await _read_materialized_api_note(api_file, api_result.file_path)
139
153
  if api_note_title not in api_text:
140
154
  raise ValueError("API note content missing from file")
141
155
 
@@ -4,7 +4,7 @@ import typer
4
4
  from rich.console import Console
5
5
 
6
6
  from basic_memory.cli.app import app
7
- from basic_memory.cli.auto_update import AutoUpdateStatus, run_auto_update
7
+ from basic_memory.cli.auto_update import AutoUpdateStatus, print_update_status, run_auto_update
8
8
 
9
9
  console = Console()
10
10
 
@@ -22,19 +22,21 @@ def update(
22
22
 
23
23
  if result.status == AutoUpdateStatus.FAILED:
24
24
  detail = f" {result.error}" if result.error else ""
25
- console.print(f"[red]{result.message or 'Update failed.'}{detail}[/red]")
25
+ print_update_status(console, f"{result.message or 'Update failed.'}{detail}", "red")
26
26
  raise typer.Exit(1)
27
27
 
28
28
  if result.status == AutoUpdateStatus.UPDATED:
29
- console.print(f"[green]{result.message or 'Basic Memory updated successfully.'}[/green]")
29
+ print_update_status(
30
+ console, f"{result.message or 'Basic Memory updated successfully.'}", "green"
31
+ )
30
32
  return
31
33
 
32
34
  if result.status == AutoUpdateStatus.UP_TO_DATE:
33
- console.print(f"[green]{result.message or 'Basic Memory is up to date.'}[/green]")
35
+ print_update_status(console, f"{result.message or 'Basic Memory is up to date.'}", "green")
34
36
  return
35
37
 
36
38
  if result.status == AutoUpdateStatus.UPDATE_AVAILABLE:
37
- console.print(f"[cyan]{result.message or 'Update available.'}[/cyan]")
39
+ print_update_status(console, f"{result.message or 'Update available.'}", "cyan")
38
40
  return
39
41
 
40
- console.print(f"[dim]{result.message or 'No update action was performed.'}[/dim]")
42
+ print_update_status(console, f"{result.message or 'No update action was performed.'}", "dim")
@@ -13,6 +13,15 @@ from markdown_it.token import Token
13
13
  # those bracket prefixes stay ordinary content (issue #1219).
14
14
  _TIMESTAMP_VALUE = r"\d{1,3}:\d{2}(?::\d{2})?(?:[.,]\d{1,3})?"
15
15
  _TIMESTAMP_CATEGORY = re.compile(rf"^{_TIMESTAMP_VALUE}(?:\s+-\s+{_TIMESTAMP_VALUE})?$")
16
+ _LINKS_TO_DIRECTIVE = re.compile(r"\s+#bm:links_to\s*$")
17
+
18
+
19
+ def remove_links_to_directive(content: str) -> tuple[str, bool]:
20
+ """Remove an exact terminal ``#bm:links_to`` directive from content."""
21
+ match = _LINKS_TO_DIRECTIVE.search(content)
22
+ if not match:
23
+ return content, False
24
+ return content[: match.start()].rstrip(), True
16
25
 
17
26
 
18
27
  def _is_task_marker_category(category: str) -> bool:
@@ -47,6 +56,7 @@ def is_observation(token: Token) -> bool:
47
56
  return False
48
57
  # Use token.tag which contains the actual content for test tokens, fallback to content
49
58
  content = (token.tag or token.content).strip()
59
+ content, _ = remove_links_to_directive(content)
50
60
  if not content: # pragma: no cover
51
61
  return False
52
62
  # if it's a markdown_task, return false
@@ -74,6 +84,7 @@ def parse_observation(token: Token) -> Dict[str, Any]:
74
84
 
75
85
  # Use token.tag which contains the actual content for test tokens, fallback to content
76
86
  content = (token.tag or token.content).strip()
87
+ content, _ = remove_links_to_directive(content)
77
88
 
78
89
  # Parse [category] with regex; a timestamp-shaped prefix is not a category, so a
79
90
  # hashtag-promoted transcript line keeps its timecode inside the content instead.
@@ -325,17 +336,19 @@ def relation_plugin(md: MarkdownIt) -> None:
325
336
 
326
337
  # Only process inline tokens
327
338
  if token.type == "inline":
339
+ content = token.tag or token.content
340
+ content_without_directive, has_directive = remove_links_to_directive(content)
341
+
328
342
  # Check for explicit relations in list items
329
- if in_list_item and is_explicit_relation(token):
343
+ if in_list_item and not has_directive and is_explicit_relation(token):
330
344
  rel = parse_relation(token)
331
345
  if rel:
332
346
  token.meta["relations"] = [rel]
333
347
 
334
348
  # Always check for inline links in any text
335
349
  else:
336
- content = token.tag or token.content
337
350
  if "[[" in content:
338
- rels = parse_inline_relations(content)
351
+ rels = parse_inline_relations(content_without_directive)
339
352
  if rels:
340
353
  token.meta["relations"] = token.meta.get("relations", []) + rels
341
354
 
@@ -109,12 +109,15 @@ async def write_note(
109
109
  - Explicit: `- relation_type [[Entity]] (optional context)`
110
110
  - Quoted: `- "multi word relation type" [[Entity]] (optional context)`
111
111
  - Quoted: `- 'multi word relation type' [[Entity]] (optional context)`
112
+ - Disambiguation: Add `#bm:links_to` when prose before `[[Entity]]`
113
+ must not be treated as a single-token relation type
112
114
  - Inline: Any other `[[Entity]]` reference creates a `links_to` relation
113
115
 
114
116
  Examples:
115
117
  `- depends_on [[Content Parser]] (Need for semantic extraction)`
116
118
  `- "based on" [[Design Notes]]`
117
119
  `- 'in response to' [[Incident Review]]`
120
+ `- Mother [[Alice]] #bm:links_to`
118
121
  `- implements [[Search Spec]] (Initial implementation)`
119
122
  `- This feature extends [[Base Design]] and uses [[Core Utils]]`
120
123
 
@@ -33,7 +33,11 @@ CREATE TABLE IF NOT EXISTS search_index (
33
33
  created_at TIMESTAMP WITH TIME ZONE,
34
34
  updated_at TIMESTAMP WITH TIME ZONE,
35
35
  textsearchable_index_col tsvector GENERATED ALWAYS AS (
36
- to_tsvector('english', coalesce(title, '') || ' ' || coalesce(content_stems, ''))
36
+ to_tsvector(
37
+ 'english',
38
+ coalesce(title, '') || ' ' ||
39
+ coalesce(content_stems, '')
40
+ )
37
41
  ) STORED,
38
42
  PRIMARY KEY (id, type, project_id),
39
43
  FOREIGN KEY (project_id) REFERENCES project(id) ON DELETE CASCADE
@@ -44,6 +48,30 @@ CREATE_POSTGRES_SEARCH_INDEX_FTS = DDL("""
44
48
  CREATE INDEX IF NOT EXISTS idx_search_index_fts ON search_index USING gin(textsearchable_index_col)
45
49
  """)
46
50
 
51
+ # Full note bodies are stored in bounded child rows so one unusually large note
52
+ # cannot exceed PostgreSQL's per-tsvector size limit.
53
+ CREATE_POSTGRES_SEARCH_INDEX_FTS_CHUNKS_TABLE = DDL("""
54
+ CREATE TABLE IF NOT EXISTS search_index_fts_chunks (
55
+ project_id INTEGER NOT NULL,
56
+ search_index_id INTEGER NOT NULL,
57
+ search_index_type VARCHAR NOT NULL,
58
+ chunk_index INTEGER NOT NULL,
59
+ chunk_text TEXT NOT NULL,
60
+ textsearchable_index_col tsvector GENERATED ALWAYS AS (
61
+ to_tsvector('english', chunk_text)
62
+ ) STORED,
63
+ PRIMARY KEY (project_id, search_index_id, search_index_type, chunk_index),
64
+ FOREIGN KEY (search_index_id, search_index_type, project_id)
65
+ REFERENCES search_index(id, type, project_id)
66
+ ON UPDATE CASCADE ON DELETE CASCADE
67
+ )
68
+ """)
69
+
70
+ CREATE_POSTGRES_SEARCH_INDEX_FTS_CHUNKS_INDEX = DDL("""
71
+ CREATE INDEX IF NOT EXISTS idx_search_index_fts_chunks_fts
72
+ ON search_index_fts_chunks USING gin(textsearchable_index_col)
73
+ """)
74
+
47
75
  CREATE_POSTGRES_SEARCH_INDEX_METADATA = DDL("""
48
76
  CREATE INDEX IF NOT EXISTS idx_search_index_metadata_gin ON search_index USING gin(metadata jsonb_path_ops)
49
77
  """)