basic-memory 0.23.2.dev3__tar.gz → 0.23.3.dev1__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 (1371) hide show
  1. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.claude-plugin/marketplace.json +2 -2
  2. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/PKG-INFO +1 -2
  3. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/__init__.py +1 -1
  4. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/plugin.yaml +1 -1
  5. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/package.json +1 -1
  6. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/.claude-plugin/marketplace.json +2 -2
  7. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/.claude-plugin/plugin.json +1 -1
  8. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/hooks/pre_compact.py +1 -1
  9. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/hooks/session_start.py +1 -1
  10. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/.codex-plugin/plugin.json +1 -1
  11. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/hooks/pre_compact.py +1 -1
  12. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/hooks/session_start.py +1 -1
  13. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/pyproject.toml +0 -1
  14. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/server.json +2 -2
  15. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/__init__.py +1 -1
  16. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/env.py +8 -18
  17. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/deps/config.py +5 -1
  18. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/deps/read_cache.py +6 -2
  19. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cli_exit.py +39 -0
  20. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_alembic_env.py +14 -0
  21. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_deps.py +59 -9
  22. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/uv.lock +0 -11
  23. basic_memory-0.23.2.dev3/src/basic_memory/migration_loop.py +0 -34
  24. basic_memory-0.23.2.dev3/tests/test_migration_loop.py +0 -33
  25. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/plugins/marketplace.json +0 -0
  26. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/adversarial-review/SKILL.md +0 -0
  27. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/adversarial-review/prompts/refute.md +0 -0
  28. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/adversarial-review/prompts/review.md +0 -0
  29. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/adversarial-review/schemas/findings.schema.json +0 -0
  30. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/adversarial-review/schemas/verdicts.schema.json +0 -0
  31. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux/SKILL.md +0 -0
  32. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux/agents/openai.yaml +0 -0
  33. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux/references/handles-and-identify.md +0 -0
  34. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux/references/panes-surfaces.md +0 -0
  35. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux/references/trigger-flash-and-health.md +0 -0
  36. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux/references/windows-workspaces.md +0 -0
  37. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-markdown/SKILL.md +0 -0
  38. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-markdown/agents/openai.yaml +0 -0
  39. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-markdown/references/commands.md +0 -0
  40. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-markdown/references/live-reload.md +0 -0
  41. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-settings/SKILL.md +0 -0
  42. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-settings/agents/openai.yaml +0 -0
  43. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-settings/references/all-keys.md +0 -0
  44. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-settings/references/shortcut-actions.md +0 -0
  45. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-settings/scripts/cmux-settings +0 -0
  46. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-workspace/SKILL.md +0 -0
  47. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-workspace/agents/openai.yaml +0 -0
  48. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/cmux-workspace/references/commands.md +0 -0
  49. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/code-review/SKILL.md +0 -0
  50. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/fix-pr-issues/SKILL.md +0 -0
  51. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/fix-pr-issues/agents/openai.yaml +0 -0
  52. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/fix-pr-issues/assets/icon.svg +0 -0
  53. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/infographics/SKILL.md +0 -0
  54. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/infographics/agents/openai.yaml +0 -0
  55. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/infographics/assets/icon.svg +0 -0
  56. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/infographics/references/prompt-blueprint.md +0 -0
  57. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/infographics/references/style-balance.md +0 -0
  58. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/instrumentation/SKILL.md +0 -0
  59. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/instrumentation/references/javascript/frameworks.md +0 -0
  60. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/instrumentation/references/javascript/patterns.md +0 -0
  61. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/instrumentation/references/python/integrations.md +0 -0
  62. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/instrumentation/references/python/logging-patterns.md +0 -0
  63. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/instrumentation/references/rust/patterns.md +0 -0
  64. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pr-create/SKILL.md +0 -0
  65. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pr-create/agents/openai.yaml +0 -0
  66. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pr-create/assets/icon.svg +0 -0
  67. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pr-description/SKILL.md +0 -0
  68. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pr-description/references/pr-body-template.md +0 -0
  69. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pr-review-loop/SKILL.md +0 -0
  70. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pull-request/SKILL.md +0 -0
  71. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/SKILL.md +0 -0
  72. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/agents/openai.yaml +0 -0
  73. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/evals/context/AGENTS.md +0 -0
  74. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/evals/context/pyproject.toml +0 -0
  75. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/evals/evals.json +0 -0
  76. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/evals/files/accepted_preparation.py +0 -0
  77. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/evals/files/accepted_snapshot.py +0 -0
  78. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/evals/files/shared_runtime_ownership.md +0 -0
  79. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/evals/files/test_accepted_preparation.py +0 -0
  80. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/evals/files/test_accepted_snapshot.py +0 -0
  81. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/justfile +0 -0
  82. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.agents/skills/pythonic-code/scripts/run_evals.py +0 -0
  83. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.claude/commands/release/beta.md +0 -0
  84. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.claude/commands/release/changelog.md +0 -0
  85. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.claude/commands/release/release-check.md +0 -0
  86. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.claude/commands/release/release.md +0 -0
  87. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.claude/commands/spec.md +0 -0
  88. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.claude/commands/test-live.md +0 -0
  89. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.claude/settings.json +0 -0
  90. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.codex/basic-memory.json +0 -0
  91. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.dockerignore +0 -0
  92. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.env.example +0 -0
  93. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.gitattributes +0 -0
  94. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  95. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  96. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/ISSUE_TEMPLATE/documentation.md +0 -0
  97. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  98. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/basic-memory/SOUL.md +0 -0
  99. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/basic-memory/config.yml +0 -0
  100. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/basic-memory/memory-ci-capture.md +0 -0
  101. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/dependabot.yml +0 -0
  102. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/claude-code-review.yml +0 -0
  103. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/claude-issue-triage.yml +0 -0
  104. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/claude.yml +0 -0
  105. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/consolidated-packages.yml +0 -0
  106. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/dev-release.yml +0 -0
  107. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/docker.yml +0 -0
  108. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/mcp-registry-publish.yml +0 -0
  109. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/pr-title.yml +0 -0
  110. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/publish-skills.yml +0 -0
  111. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/release.yml +0 -0
  112. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.github/workflows/test.yml +0 -0
  113. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.gitignore +0 -0
  114. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/.python-version +0 -0
  115. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/AGENTS.md +0 -0
  116. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/CHANGELOG.md +0 -0
  117. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/CITATION.cff +0 -0
  118. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/CLA.md +0 -0
  119. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/CLAUDE.md +0 -0
  120. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/CODE_OF_CONDUCT.md +0 -0
  121. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/CONTRIBUTING.md +0 -0
  122. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/Dockerfile +0 -0
  123. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/LICENSE +0 -0
  124. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/NOTE-FORMAT.md +0 -0
  125. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/README.md +0 -0
  126. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/SECURITY.md +0 -0
  127. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/.github/workflows/benchmark-nightly.yml +0 -0
  128. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/.github/workflows/benchmark-smoke.yml +0 -0
  129. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/.gitignore +0 -0
  130. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/.python-version +0 -0
  131. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/AGENTS.md +0 -0
  132. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/README.md +0 -0
  133. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/datasets/README.md +0 -0
  134. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/datasets/locomo/README.md +0 -0
  135. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/datasets/locomo/download.sh +0 -0
  136. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/datasets/locomo/source.json +0 -0
  137. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/datasets/longmemeval/README.md +0 -0
  138. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/datasets/longmemeval/download.sh +0 -0
  139. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/results/matrix-v1.2-summary.md +0 -0
  140. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/results/matrix-v2-summary.md +0 -0
  141. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/results/structured-ingestion-findings.md +0 -0
  142. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/synthetic/docs/agent-memory.md +0 -0
  143. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/synthetic/docs/auth-memory.md +0 -0
  144. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/synthetic/docs/sync-memory.md +0 -0
  145. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/benchmarks/synthetic/queries.json +0 -0
  146. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/docs/benchmarks.md +0 -0
  147. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/docs/read-load-benchmark.md +0 -0
  148. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/docs/write-load-benchmark.md +0 -0
  149. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/justfile +0 -0
  150. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/pyproject.toml +0 -0
  151. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/scripts/read_load_bench.py +0 -0
  152. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/scripts/write_load_bench.py +0 -0
  153. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/__init__.py +0 -0
  154. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/__main__.py +0 -0
  155. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/bm_runtime.py +0 -0
  156. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/cli.py +0 -0
  157. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/concurrent_write.py +0 -0
  158. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/converters/__init__.py +0 -0
  159. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/converters/convomem_to_corpus.py +0 -0
  160. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/converters/locomo_to_corpus.py +0 -0
  161. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/converters/longmemeval_to_corpus.py +0 -0
  162. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/converters/structure_corpus.py +0 -0
  163. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/datasets/__init__.py +0 -0
  164. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/datasets/convomem.py +0 -0
  165. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/datasets/locomo.py +0 -0
  166. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/datasets/locomo_audit.py +0 -0
  167. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/datasets/longmemeval.py +0 -0
  168. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/exceptions.py +0 -0
  169. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/fairness.py +0 -0
  170. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/llm/__init__.py +0 -0
  171. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/llm/runners.py +0 -0
  172. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/models.py +0 -0
  173. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/providers/__init__.py +0 -0
  174. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/providers/base.py +0 -0
  175. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/providers/baseline_fullcontext.py +0 -0
  176. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/providers/baseline_grep.py +0 -0
  177. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/providers/bm_cloud.py +0 -0
  178. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/providers/bm_local.py +0 -0
  179. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/providers/mem0_local.py +0 -0
  180. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/providers/supermemory_local.py +0 -0
  181. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/providers/zep_reference.py +0 -0
  182. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/reporting/__init__.py +0 -0
  183. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/reporting/artifacts.py +0 -0
  184. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/reporting/compare.py +0 -0
  185. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/runner.py +0 -0
  186. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/scoring/__init__.py +0 -0
  187. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/scoring/diagnose.py +0 -0
  188. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/scoring/qa.py +0 -0
  189. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/scoring/retrieval.py +0 -0
  190. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/scoring/review.py +0 -0
  191. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/src/basic_memory_benchmarks/utils.py +0 -0
  192. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/test-int/test_compare_regression.py +0 -0
  193. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/test-int/test_runner_orchestration.py +0 -0
  194. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/converters/__init__.py +0 -0
  195. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/converters/test_convomem_converter.py +0 -0
  196. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/converters/test_locomo_audit_corrections.py +0 -0
  197. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/converters/test_longmemeval_converter.py +0 -0
  198. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/llm/test_runners.py +0 -0
  199. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/providers/test_baseline_providers.py +0 -0
  200. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/providers/test_bm_local_provider.py +0 -0
  201. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/providers/test_mem0_normalization.py +0 -0
  202. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/providers/test_supermemory_provider.py +0 -0
  203. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_cli_surface.py +0 -0
  204. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_concurrent_write.py +0 -0
  205. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_diagnose.py +0 -0
  206. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_fairness.py +0 -0
  207. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_manifest_schema.py +0 -0
  208. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_qa_scoring.py +0 -0
  209. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_retrieval_metrics.py +0 -0
  210. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_review.py +0 -0
  211. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_runner_grouped.py +0 -0
  212. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/tests/test_structure_corpus.py +0 -0
  213. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/benchmarks/uv.lock +0 -0
  214. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docker-compose-postgres.yml +0 -0
  215. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docker-compose.yml +0 -0
  216. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/ARCHITECTURE.md +0 -0
  217. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/DOMAIN_MODEL.md +0 -0
  218. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/Docker.md +0 -0
  219. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/ENGINEERING_STYLE.md +0 -0
  220. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/NOTE-FORMAT.md +0 -0
  221. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/REDIS_READ_CACHE_PLAN.md +0 -0
  222. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/SPEC-PER-PROJECT-ROUTING.md +0 -0
  223. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/TRANSACTION_ISOLATION.md +0 -0
  224. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/ai-assistant-guide-extended.md +0 -0
  225. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/auto-bm-webhook-test.md +0 -0
  226. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/character-handling.md +0 -0
  227. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/cloud-cli.md +0 -0
  228. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/cloud-semantic-search-value.md +0 -0
  229. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/litellm-provider.md +0 -0
  230. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/logfire-instrumentation-strategy.md +0 -0
  231. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/manual-pages.md +0 -0
  232. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/mcp-ui-bakeoff-instructions.md +0 -0
  233. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/metadata-search.md +0 -0
  234. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/post-v0.18.0-test-plan.md +0 -0
  235. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/releases/v0.19.0.md +0 -0
  236. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/semantic-search-test-log.md +0 -0
  237. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/semantic-search.md +0 -0
  238. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/specs/SPEC-LOCAL-PLUS-PUBLISH.md +0 -0
  239. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/specs/SPEC-SCHEMA-IMPL.md +0 -0
  240. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/specs/SPEC-SCHEMA.md +0 -0
  241. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/docs/testing-coverage.md +0 -0
  242. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/glama.json +0 -0
  243. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/.coveragerc +0 -0
  244. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/.github/workflows/integration.yml +0 -0
  245. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/.github/workflows/pr-title.yml +0 -0
  246. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/.github/workflows/release.yml +0 -0
  247. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/.github/workflows/test.yml +0 -0
  248. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/.gitignore +0 -0
  249. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/CHANGELOG.md +0 -0
  250. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/LICENSE +0 -0
  251. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/MONKEYPATCH.md +0 -0
  252. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/README.md +0 -0
  253. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/justfile +0 -0
  254. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/pytest.ini +0 -0
  255. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/requirements-dev.txt +0 -0
  256. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/skill/SKILL.md +0 -0
  257. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/__init__.py +0 -0
  258. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/conftest.py +0 -0
  259. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/stubs/agent/__init__.py +0 -0
  260. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/stubs/agent/memory_provider.py +0 -0
  261. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/stubs/tools/__init__.py +0 -0
  262. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/stubs/tools/registry.py +0 -0
  263. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/test_actor.py +0 -0
  264. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/test_capture.py +0 -0
  265. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/test_child_env.py +0 -0
  266. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/test_commands.py +0 -0
  267. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/test_helpers.py +0 -0
  268. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/test_integration.py +0 -0
  269. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/test_lifecycle.py +0 -0
  270. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/test_prefetch.py +0 -0
  271. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/hermes/tests/test_provider.py +0 -0
  272. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/.githooks/pre-commit +0 -0
  273. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/.github/workflows/ci.yml +0 -0
  274. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/.github/workflows/release.yml +0 -0
  275. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/.gitignore +0 -0
  276. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/AGENTS.md +0 -0
  277. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/BASIC_MEMORY.md +0 -0
  278. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/CLAUDE.md +0 -0
  279. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/CONTEXT_ENGINE_PLAN.md +0 -0
  280. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/DEVELOPMENT.md +0 -0
  281. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/LICENSE +0 -0
  282. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/MEMORY_TASK_FLOW.md +0 -0
  283. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/README.md +0 -0
  284. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/SECURITY.md +0 -0
  285. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/biome.json +0 -0
  286. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/bm-client.test.ts +0 -0
  287. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/bm-client.ts +0 -0
  288. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/bun.lock +0 -0
  289. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/commands/cli.ts +0 -0
  290. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/commands/skills.test.ts +0 -0
  291. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/commands/skills.ts +0 -0
  292. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/commands/slash.ts +0 -0
  293. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/config.test.ts +0 -0
  294. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/config.ts +0 -0
  295. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/context-engine/basic-memory-context-engine.test.ts +0 -0
  296. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/context-engine/basic-memory-context-engine.ts +0 -0
  297. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/hooks/capture.test.ts +0 -0
  298. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/hooks/capture.ts +0 -0
  299. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/hooks/recall.test.ts +0 -0
  300. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/hooks/recall.ts +0 -0
  301. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/index.test.ts +0 -0
  302. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/index.ts +0 -0
  303. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/integration/bm-client.integration.test.ts +0 -0
  304. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/justfile +0 -0
  305. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/logger.test.ts +0 -0
  306. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/logger.ts +0 -0
  307. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/openclaw.plugin.json +0 -0
  308. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/schema/conversation-schema.ts +0 -0
  309. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/schema/task-schema.ts +0 -0
  310. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/scripts/bm-local.sh +0 -0
  311. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/scripts/fetch-skills.ts +0 -0
  312. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/scripts/setup-bm.sh +0 -0
  313. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/build-context.test.ts +0 -0
  314. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/build-context.ts +0 -0
  315. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/delete-note.test.ts +0 -0
  316. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/delete-note.ts +0 -0
  317. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/edit-note.test.ts +0 -0
  318. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/edit-note.ts +0 -0
  319. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/list-memory-projects.test.ts +0 -0
  320. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/list-memory-projects.ts +0 -0
  321. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/list-workspaces.test.ts +0 -0
  322. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/list-workspaces.ts +0 -0
  323. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/memory-provider.test.ts +0 -0
  324. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/memory-provider.ts +0 -0
  325. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/move-note.test.ts +0 -0
  326. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/move-note.ts +0 -0
  327. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/read-note.test.ts +0 -0
  328. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/read-note.ts +0 -0
  329. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/schema-diff.test.ts +0 -0
  330. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/schema-diff.ts +0 -0
  331. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/schema-infer.test.ts +0 -0
  332. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/schema-infer.ts +0 -0
  333. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/schema-validate.test.ts +0 -0
  334. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/schema-validate.ts +0 -0
  335. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/search-notes.test.ts +0 -0
  336. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/search-notes.ts +0 -0
  337. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/write-note.test.ts +0 -0
  338. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tools/write-note.ts +0 -0
  339. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tsconfig.build.json +0 -0
  340. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/integrations/openclaw/tsconfig.json +0 -0
  341. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/justfile +0 -0
  342. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/llms-install.md +0 -0
  343. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/CHANGELOG.md +0 -0
  344. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/DESIGN.md +0 -0
  345. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/README.md +0 -0
  346. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/docs/architecture.md +0 -0
  347. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/docs/getting-started.md +0 -0
  348. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/docs/why-combine-memory.md +0 -0
  349. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/hooks/hooks.json +0 -0
  350. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/hooks/test_claude_pre_compact.py +0 -0
  351. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/hooks/test_claude_session_start.py +0 -0
  352. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/justfile +0 -0
  353. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/output-styles/basic-memory.md +0 -0
  354. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/schemas/coding-session.md +0 -0
  355. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/schemas/decision.md +0 -0
  356. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/schemas/manpage.md +0 -0
  357. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/schemas/session.md +0 -0
  358. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/schemas/task.md +0 -0
  359. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/settings.example.json +0 -0
  360. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/skills/bm-checkpoint/SKILL.md +0 -0
  361. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/skills/bm-decide/SKILL.md +0 -0
  362. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/skills/bm-orient/SKILL.md +0 -0
  363. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/skills/bm-remember/SKILL.md +0 -0
  364. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/skills/bm-setup/SKILL.md +0 -0
  365. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/skills/bm-share/SKILL.md +0 -0
  366. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/skills/bm-status/SKILL.md +0 -0
  367. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/claude-code/skills/bm-writing/SKILL.md +0 -0
  368. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/.mcp.json +0 -0
  369. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/DEVELOPMENT.md +0 -0
  370. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/README.md +0 -0
  371. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/assets/app-icon.png +0 -0
  372. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/assets/logo.png +0 -0
  373. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/hooks/hooks.json +0 -0
  374. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/hooks/test_codex_pre_compact.py +0 -0
  375. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/hooks/test_codex_session_start.py +0 -0
  376. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/justfile +0 -0
  377. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/schemas/codex-session.md +0 -0
  378. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/schemas/coding-session.md +0 -0
  379. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/schemas/decision.md +0 -0
  380. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/schemas/task.md +0 -0
  381. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-checkpoint/SKILL.md +0 -0
  382. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-checkpoint/agents/openai.yaml +0 -0
  383. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-checkpoint/assets/icon.svg +0 -0
  384. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-decide/SKILL.md +0 -0
  385. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-decide/agents/openai.yaml +0 -0
  386. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-decide/assets/icon.svg +0 -0
  387. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-orient/SKILL.md +0 -0
  388. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-orient/agents/openai.yaml +0 -0
  389. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-orient/assets/icon.svg +0 -0
  390. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-remember/SKILL.md +0 -0
  391. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-remember/agents/openai.yaml +0 -0
  392. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-remember/assets/icon.svg +0 -0
  393. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-setup/SKILL.md +0 -0
  394. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-setup/agents/openai.yaml +0 -0
  395. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-setup/assets/icon.svg +0 -0
  396. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-share/SKILL.md +0 -0
  397. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-share/agents/openai.yaml +0 -0
  398. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-share/assets/icon.svg +0 -0
  399. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-status/SKILL.md +0 -0
  400. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-status/agents/openai.yaml +0 -0
  401. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-status/assets/icon.svg +0 -0
  402. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-writing/SKILL.md +0 -0
  403. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-writing/agents/openai.yaml +0 -0
  404. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/plugins/codex/skills/bm-writing/assets/icon.svg +0 -0
  405. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/scripts/build_skills_dist.py +0 -0
  406. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/scripts/edit-issue-labels.sh +0 -0
  407. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/scripts/testmon_cache.py +0 -0
  408. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/scripts/update_versions.py +0 -0
  409. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/scripts/validate_claude_plugin.py +0 -0
  410. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/scripts/validate_codex_plugin.py +0 -0
  411. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/scripts/validate_hermes_plugin.py +0 -0
  412. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/scripts/validate_skills.py +0 -0
  413. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/AGENTS.md +0 -0
  414. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/CLAUDE.md +0 -0
  415. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/DEVELOPMENT.md +0 -0
  416. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/README.md +0 -0
  417. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/justfile +0 -0
  418. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-capture/SKILL.md +0 -0
  419. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-ci-capture/SKILL.md +0 -0
  420. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-continue/SKILL.md +0 -0
  421. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-curate/SKILL.md +0 -0
  422. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-defrag/SKILL.md +0 -0
  423. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-ingest/SKILL.md +0 -0
  424. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-lifecycle/SKILL.md +0 -0
  425. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-literary-analysis/SKILL.md +0 -0
  426. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-metadata-search/SKILL.md +0 -0
  427. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-notes/SKILL.md +0 -0
  428. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-onboarding/SKILL.md +0 -0
  429. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-onboarding/evals/evals.json +0 -0
  430. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-onboarding/references/assistant-setup.md +0 -0
  431. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-onboarding/references/conventions.md +0 -0
  432. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-onboarding/references/domain-playbooks.md +0 -0
  433. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-onboarding/references/schema-guide.md +0 -0
  434. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-reflect/SKILL.md +0 -0
  435. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-research/SKILL.md +0 -0
  436. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-schema/SKILL.md +0 -0
  437. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/memory-tasks/SKILL.md +0 -0
  438. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills/skills-lock.json +0 -0
  439. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/skills-lock.json +0 -0
  440. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/smithery.yaml +0 -0
  441. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/alembic.ini +0 -0
  442. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/migrations.py +0 -0
  443. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/script.py.mako +0 -0
  444. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/2d26b287813b_dedupe_observations_and_purge_stale_.py +0 -0
  445. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/314f1ea54dc4_add_postgres_full_text_search_support_.py +0 -0
  446. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/3dae7c7b1564_initial_schema.py +0 -0
  447. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/502b60eaa905_remove_required_from_entity_permalink.py +0 -0
  448. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/5fe1ab1ccebe_add_projects_table.py +0 -0
  449. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/647e7a75e2cd_project_constraint_fix.py +0 -0
  450. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/6830751f5fb6_merge_multiple_heads.py +0 -0
  451. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/7f6a2b8c9d10_index_full_postgres_note_content.py +0 -0
  452. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/9d9c1cb7d8f5_add_mtime_and_size_columns_to_entity_.py +0 -0
  453. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/a1b2c3d4e5f6_fix_project_foreign_keys.py +0 -0
  454. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/a2b3c4d5e6f7_add_search_index_entity_cascade.py +0 -0
  455. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/b3c3938bacdb_relation_to_name_unique_index.py +0 -0
  456. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/cc7172b46608_update_search_index_schema.py +0 -0
  457. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/d7e8f9a0b1c2_add_structured_metadata_indexes.py +0 -0
  458. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/e7e1f4367280_add_scan_watermark_tracking_to_project.py +0 -0
  459. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/f8a9b2c3d4e5_add_pg_trgm_for_fuzzy_link_resolution.py +0 -0
  460. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/g9a0b3c4d5e6_add_external_id_to_project_and_entity.py +0 -0
  461. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/h1b2c3d4e5f6_add_postgres_vector_search_tables.py +0 -0
  462. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/i2c3d4e5f6g7_auto_backfill_semantic_embeddings.py +0 -0
  463. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/j3d4e5f6g7h8_rename_entity_type_to_note_type.py +0 -0
  464. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/k4e5f6g7h8i9_add_created_by_and_last_updated_by_to_entity.py +0 -0
  465. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/l5g6h7i8j9k0_add_note_content_table.py +0 -0
  466. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/m6h7i8j9k0l1_add_vector_sync_fingerprints.py +0 -0
  467. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/n7i8j9k0l1m2_cleanup_sqlite_search_orphans.py +0 -0
  468. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/o8j9k0l1m2n3_add_note_file_vacate_table.py +0 -0
  469. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/p9k0l1m2n3o4_add_vector_index_manifest_state.py +0 -0
  470. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/q0l1m2n3o4p5_add_relation_search_refresh_table.py +0 -0
  471. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/alembic/versions/r1m2n3o4p5q6_add_relation_generation.py +0 -0
  472. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/__init__.py +0 -0
  473. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/app.py +0 -0
  474. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/container.py +0 -0
  475. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/template_loader.py +0 -0
  476. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/__init__.py +0 -0
  477. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/__init__.py +0 -0
  478. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/directory_router.py +0 -0
  479. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/importer_router.py +0 -0
  480. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/inspect_router.py +0 -0
  481. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/knowledge_router.py +0 -0
  482. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/memory_router.py +0 -0
  483. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/project_router.py +0 -0
  484. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/prompt_router.py +0 -0
  485. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/resource_router.py +0 -0
  486. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/schema_router.py +0 -0
  487. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/routers/search_router.py +0 -0
  488. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/api/v2/utils.py +0 -0
  489. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/ci/README.md +0 -0
  490. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/ci/__init__.py +0 -0
  491. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/ci/project_updates.py +0 -0
  492. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/__init__.py +0 -0
  493. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/analytics.py +0 -0
  494. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/app.py +0 -0
  495. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/auth.py +0 -0
  496. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/auto_update.py +0 -0
  497. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/__init__.py +0 -0
  498. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/ci.py +0 -0
  499. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/__init__.py +0 -0
  500. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/api_client.py +0 -0
  501. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/bisync_commands.py +0 -0
  502. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/cloud_utils.py +0 -0
  503. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/core_commands.py +0 -0
  504. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/project_sync.py +0 -0
  505. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/rclone_commands.py +0 -0
  506. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/rclone_config.py +0 -0
  507. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/rclone_installer.py +0 -0
  508. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/restore.py +0 -0
  509. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/schemas.py +0 -0
  510. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/shares.py +0 -0
  511. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/snapshot.py +0 -0
  512. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/transfer.py +0 -0
  513. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/upload.py +0 -0
  514. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/upload_command.py +0 -0
  515. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/webdav.py +0 -0
  516. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/webdav_transfer.py +0 -0
  517. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/cloud/workspace.py +0 -0
  518. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/command_utils.py +0 -0
  519. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/config.py +0 -0
  520. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/db.py +0 -0
  521. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/doctor.py +0 -0
  522. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/format.py +0 -0
  523. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/hook.py +0 -0
  524. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/import_chatgpt.py +0 -0
  525. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/import_claude_conversations.py +0 -0
  526. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/import_claude_projects.py +0 -0
  527. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/import_memory_json.py +0 -0
  528. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/inspect.py +0 -0
  529. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/man.py +0 -0
  530. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/mcp.py +0 -0
  531. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/orphans.py +0 -0
  532. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/project.py +0 -0
  533. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/routing.py +0 -0
  534. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/schema.py +0 -0
  535. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/status.py +0 -0
  536. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/tool.py +0 -0
  537. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/update.py +0 -0
  538. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/commands/workspace.py +0 -0
  539. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/container.py +0 -0
  540. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/main.py +0 -0
  541. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/cli/promo.py +0 -0
  542. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/config.py +0 -0
  543. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/config_logging.py +0 -0
  544. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/config_migrations.py +0 -0
  545. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/config_models.py +0 -0
  546. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/db.py +0 -0
  547. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/deps/__init__.py +0 -0
  548. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/deps/db.py +0 -0
  549. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/deps/importers.py +0 -0
  550. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/deps/projects.py +0 -0
  551. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/deps/repositories.py +0 -0
  552. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/deps/services.py +0 -0
  553. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/file_utils.py +0 -0
  554. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/__init__.py +0 -0
  555. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/_uuid7.py +0 -0
  556. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/adapters/__init__.py +0 -0
  557. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/adapters/base.py +0 -0
  558. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/adapters/claude.py +0 -0
  559. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/adapters/codex.py +0 -0
  560. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/archive.py +0 -0
  561. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/envelope.py +0 -0
  562. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/inbox.py +0 -0
  563. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/hooks/project_ref.py +0 -0
  564. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/ignore_utils.py +0 -0
  565. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/importers/__init__.py +0 -0
  566. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/importers/base.py +0 -0
  567. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/importers/chatgpt_importer.py +0 -0
  568. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/importers/claude_conversations_importer.py +0 -0
  569. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/importers/claude_projects_importer.py +0 -0
  570. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/importers/memory_json_importer.py +0 -0
  571. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/importers/project_zip_import.py +0 -0
  572. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/importers/utils.py +0 -0
  573. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/__init__.py +0 -0
  574. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/event_operations.py +0 -0
  575. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/filesystem.py +0 -0
  576. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/inline_operations.py +0 -0
  577. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/local_dependencies.py +0 -0
  578. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/local_moves.py +0 -0
  579. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/local_notes.py +0 -0
  580. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/local_project.py +0 -0
  581. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/local_runtime.py +0 -0
  582. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/local_schedulers.py +0 -0
  583. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/local_watch.py +0 -0
  584. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/note_content_materialization.py +0 -0
  585. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/project_indexing.py +0 -0
  586. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/repository_project_resolution.py +0 -0
  587. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/schedulers.py +0 -0
  588. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/storage_events.py +0 -0
  589. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/watch_coordinator.py +0 -0
  590. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/index/watch_service.py +0 -0
  591. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/__init__.py +0 -0
  592. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/accepted_note_enqueue_runner.py +0 -0
  593. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/accepted_note_mutation_runner.py +0 -0
  594. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/accepted_note_search.py +0 -0
  595. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/accepted_note_write_runner.py +0 -0
  596. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/batch_indexer.py +0 -0
  597. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/batching.py +0 -0
  598. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/change_detector.py +0 -0
  599. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/change_planning.py +0 -0
  600. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/directory_delete_runner.py +0 -0
  601. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/embedding_index_planning.py +0 -0
  602. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/external_file_delete_runner.py +0 -0
  603. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/file_batch_runner.py +0 -0
  604. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/file_index_checking.py +0 -0
  605. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/file_index_planning.py +0 -0
  606. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/file_indexer.py +0 -0
  607. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/forward_reference_resolution.py +0 -0
  608. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/index_batch_runtime.py +0 -0
  609. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/index_file_runner.py +0 -0
  610. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/index_file_runtime.py +0 -0
  611. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/input_file_adaptation.py +0 -0
  612. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/job_payloads.py +0 -0
  613. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/link_resolution.py +0 -0
  614. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/models.py +0 -0
  615. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/note_content_batch_reconciliation.py +0 -0
  616. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/note_content_read_repair_runner.py +0 -0
  617. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/note_content_reconciler.py +0 -0
  618. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/note_content_reconciliation.py +0 -0
  619. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/note_file_delete_runner.py +0 -0
  620. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/note_materialization_runner.py +0 -0
  621. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/orphan_cleanup.py +0 -0
  622. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/progress.py +0 -0
  623. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_delete_acceptance.py +0 -0
  624. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_delete_runner.py +0 -0
  625. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_index_coordinator.py +0 -0
  626. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_index_maintenance.py +0 -0
  627. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_index_progress.py +0 -0
  628. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_index_runtime.py +0 -0
  629. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_index_workflow.py +0 -0
  630. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_index_workflow_models.py +0 -0
  631. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_index_workflow_stale.py +0 -0
  632. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/project_index_workflow_updates.py +0 -0
  633. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/relation_persistence.py +0 -0
  634. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/indexing/relation_resolution.py +0 -0
  635. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/man/basic-memory.1 +0 -0
  636. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/man/bm.1 +0 -0
  637. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/markdown/__init__.py +0 -0
  638. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/markdown/entity_parser.py +0 -0
  639. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/markdown/markdown_processor.py +0 -0
  640. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/markdown/plugins.py +0 -0
  641. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/markdown/schemas.py +0 -0
  642. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/markdown/utils.py +0 -0
  643. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/__init__.py +0 -0
  644. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/async_client.py +0 -0
  645. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/client_info.py +0 -0
  646. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/clients/__init__.py +0 -0
  647. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/clients/directory.py +0 -0
  648. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/clients/inspect.py +0 -0
  649. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/clients/knowledge.py +0 -0
  650. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/clients/memory.py +0 -0
  651. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/clients/project.py +0 -0
  652. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/clients/resource.py +0 -0
  653. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/clients/schema.py +0 -0
  654. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/clients/search.py +0 -0
  655. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/container.py +0 -0
  656. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/note_reads.py +0 -0
  657. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/project_context.py +0 -0
  658. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/project_context_identifiers.py +0 -0
  659. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/prompts/__init__.py +0 -0
  660. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/prompts/ai_assistant_guide.py +0 -0
  661. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/prompts/continue_conversation.py +0 -0
  662. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/prompts/getting_started.py +0 -0
  663. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/prompts/recent_activity.py +0 -0
  664. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/prompts/search.py +0 -0
  665. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/prompts/utils.py +0 -0
  666. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/resources/__init__.py +0 -0
  667. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/resources/ai_assistant_guide.md +0 -0
  668. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/resources/project_info.py +0 -0
  669. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/server.py +0 -0
  670. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/__init__.py +0 -0
  671. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/basic_memory_diagnostics.py +0 -0
  672. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/build_context.py +0 -0
  673. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/chatgpt_tools.py +0 -0
  674. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/delete_note.py +0 -0
  675. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/edit_note.py +0 -0
  676. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/list_directory.py +0 -0
  677. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/move_note.py +0 -0
  678. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/project_management.py +0 -0
  679. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/read_content.py +0 -0
  680. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/read_note.py +0 -0
  681. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/recent_activity.py +0 -0
  682. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/schema.py +0 -0
  683. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/search.py +0 -0
  684. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/ui_sdk.py +0 -0
  685. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/utils.py +0 -0
  686. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/view_note.py +0 -0
  687. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/workspaces.py +0 -0
  688. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/tools/write_note.py +0 -0
  689. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/ui/__init__.py +0 -0
  690. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/ui/html/note-preview-mcp-ui.html +0 -0
  691. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/ui/html/note-preview-tool-ui.html +0 -0
  692. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/ui/html/note-preview-vanilla.html +0 -0
  693. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/ui/html/search-results-mcp-ui.html +0 -0
  694. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/ui/html/search-results-tool-ui.html +0 -0
  695. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/ui/html/search-results-vanilla.html +0 -0
  696. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/ui/sdk.py +0 -0
  697. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/ui/templates.py +0 -0
  698. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/mcp/workspace_project_index.py +0 -0
  699. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/models/__init__.py +0 -0
  700. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/models/base.py +0 -0
  701. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/models/knowledge.py +0 -0
  702. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/models/project.py +0 -0
  703. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/models/relation_search_refresh.py +0 -0
  704. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/models/search.py +0 -0
  705. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/picoschema/__init__.py +0 -0
  706. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/picoschema/diff.py +0 -0
  707. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/picoschema/inference.py +0 -0
  708. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/picoschema/parser.py +0 -0
  709. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/picoschema/resolver.py +0 -0
  710. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/picoschema/validator.py +0 -0
  711. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/project_resolver.py +0 -0
  712. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/read_cache/__init__.py +0 -0
  713. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/read_cache/contract.py +0 -0
  714. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/read_cache/invalidation.py +0 -0
  715. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/read_cache/keys.py +0 -0
  716. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/read_cache/lifecycle.py +0 -0
  717. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/read_cache/policy.py +0 -0
  718. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/read_cache/read_through.py +0 -0
  719. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/read_cache/redis.py +0 -0
  720. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/redaction.py +0 -0
  721. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/__init__.py +0 -0
  722. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/accepted_note_repositories.py +0 -0
  723. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/accepted_note_search_repository.py +0 -0
  724. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/accepted_note_search_row.py +0 -0
  725. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/accepted_note_vector_cleanup.py +0 -0
  726. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/embedding_provider.py +0 -0
  727. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/embedding_provider_factory.py +0 -0
  728. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/entity_repository.py +0 -0
  729. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/fastembed_provider.py +0 -0
  730. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/fastembed_rerank_provider.py +0 -0
  731. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/litellm_provider.py +0 -0
  732. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/litellm_rerank_provider.py +0 -0
  733. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/metadata_filters.py +0 -0
  734. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/milvus_config.py +0 -0
  735. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/milvus_index.py +0 -0
  736. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/milvus_repository.py +0 -0
  737. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/note_content_repository.py +0 -0
  738. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/note_file_vacate_repository.py +0 -0
  739. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/observation_repository.py +0 -0
  740. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/openai_provider.py +0 -0
  741. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/pgvector_index.py +0 -0
  742. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/postgres_search_repository.py +0 -0
  743. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/prefixing_provider.py +0 -0
  744. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/project_info_repository.py +0 -0
  745. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/project_repository.py +0 -0
  746. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/relation_repository.py +0 -0
  747. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/repository.py +0 -0
  748. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/rerank_provider.py +0 -0
  749. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/rerank_provider_factory.py +0 -0
  750. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/search_index_row.py +0 -0
  751. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/search_query.py +0 -0
  752. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/search_repository.py +0 -0
  753. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/search_repository_base.py +0 -0
  754. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/search_trace.py +0 -0
  755. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/semantic_chunking.py +0 -0
  756. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/semantic_errors.py +0 -0
  757. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/semantic_vector_index.py +0 -0
  758. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/semantic_vector_index_factory.py +0 -0
  759. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/semantic_vector_sync.py +0 -0
  760. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/sqlite_search_repository.py +0 -0
  761. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/repository/sqlite_vec_index.py +0 -0
  762. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/__init__.py +0 -0
  763. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/accepted_note_changes.py +0 -0
  764. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/cleanup.py +0 -0
  765. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/job_payloads.py +0 -0
  766. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/jobs.py +0 -0
  767. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/mode.py +0 -0
  768. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/note_content.py +0 -0
  769. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/note_content_deletes.py +0 -0
  770. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/note_content_reads.py +0 -0
  771. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/note_content_responses.py +0 -0
  772. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/note_file_guards.py +0 -0
  773. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/note_materialization.py +0 -0
  774. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/note_materialization_planning.py +0 -0
  775. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/note_move.py +0 -0
  776. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/note_object_metadata.py +0 -0
  777. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/observed_index_files.py +0 -0
  778. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/process.py +0 -0
  779. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/projects.py +0 -0
  780. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/sample_notes.py +0 -0
  781. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/storage.py +0 -0
  782. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/storage_events.py +0 -0
  783. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/storage_project_resolution.py +0 -0
  784. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/vector_sync.py +0 -0
  785. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/runtime/workflows.py +0 -0
  786. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/__init__.py +0 -0
  787. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/base.py +0 -0
  788. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/cloud.py +0 -0
  789. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/delete.py +0 -0
  790. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/directory.py +0 -0
  791. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/importer.py +0 -0
  792. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/inspect.py +0 -0
  793. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/memory.py +0 -0
  794. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/project_index.py +0 -0
  795. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/project_info.py +0 -0
  796. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/prompt.py +0 -0
  797. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/request.py +0 -0
  798. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/response.py +0 -0
  799. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/schema.py +0 -0
  800. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/search.py +0 -0
  801. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/v2/__init__.py +0 -0
  802. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/v2/entity.py +0 -0
  803. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/v2/graph.py +0 -0
  804. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/schemas/v2/project_index.py +0 -0
  805. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/__init__.py +0 -0
  806. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/bulk_link_resolver.py +0 -0
  807. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/composition.py +0 -0
  808. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/context_service.py +0 -0
  809. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/directory_deletes.py +0 -0
  810. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/directory_service.py +0 -0
  811. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/entity_service.py +0 -0
  812. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/exceptions.py +0 -0
  813. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/file_service.py +0 -0
  814. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/initialization.py +0 -0
  815. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/link_resolver.py +0 -0
  816. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/note_content_reads.py +0 -0
  817. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/note_content_writes.py +0 -0
  818. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/note_preparation.py +0 -0
  819. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/project_deletes.py +0 -0
  820. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/project_service.py +0 -0
  821. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/retrieval_inspect.py +0 -0
  822. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/search_service.py +0 -0
  823. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/services/service.py +0 -0
  824. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/telemetry.py +0 -0
  825. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/templates/prompts/continue_conversation.hbs +0 -0
  826. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/templates/prompts/search.hbs +0 -0
  827. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/utils.py +0 -0
  828. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/src/basic_memory/workspace_context.py +0 -0
  829. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/BENCHMARKS.md +0 -0
  830. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/bughunt_fixes/__init__.py +0 -0
  831. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/bughunt_fixes/test_cli_tool_read_note_security_error.py +0 -0
  832. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/bughunt_fixes/test_cli_tool_recent_activity_page_size.py +0 -0
  833. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/bughunt_fixes/test_cli_tool_search_notes_category.py +0 -0
  834. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/bughunt_fixes/test_cli_tool_write_note_parity.py +0 -0
  835. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/bughunt_fixes/test_move_note_edge_cases.py +0 -0
  836. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/bughunt_fixes/test_navigation_pagination_integration.py +0 -0
  837. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/bughunt_fixes/test_parse_tags_comma_split_integration.py +0 -0
  838. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_cli_tool_delete_note_integration.py +0 -0
  839. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_cli_tool_edit_note_integration.py +0 -0
  840. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_cli_tool_json_failure_integration.py +0 -0
  841. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_cli_tool_json_integration.py +0 -0
  842. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_cli_tool_write_note_type_integration.py +0 -0
  843. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_project_commands_integration.py +0 -0
  844. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_routing_integration.py +0 -0
  845. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_search_notes_meta_integration.py +0 -0
  846. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_status_wait_integration.py +0 -0
  847. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/cli/test_version_integration.py +0 -0
  848. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/compare_search_benchmarks.py +0 -0
  849. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/conftest.py +0 -0
  850. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-01.md +0 -0
  851. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-02.md +0 -0
  852. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-03.md +0 -0
  853. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-04.md +0 -0
  854. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-05.md +0 -0
  855. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-06.md +0 -0
  856. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-07.md +0 -0
  857. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-08.md +0 -0
  858. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-09.md +0 -0
  859. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-10.md +0 -0
  860. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-11.md +0 -0
  861. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-12.md +0 -0
  862. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-13.md +0 -0
  863. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-14.md +0 -0
  864. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-15.md +0 -0
  865. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-16.md +0 -0
  866. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-17.md +0 -0
  867. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-18.md +0 -0
  868. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-19.md +0 -0
  869. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/people/drift-person-20.md +0 -0
  870. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/drift/schema/Person.md +0 -0
  871. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/edge-cases/array-single.md +0 -0
  872. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/edge-cases/empty-note.md +0 -0
  873. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/edge-cases/explicit-overrides-type.md +0 -0
  874. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/edge-cases/inline-and-type.md +0 -0
  875. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/edge-cases/no-frontmatter.md +0 -0
  876. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/edge-cases/relation-only.md +0 -0
  877. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/edge-cases/type-no-schema.md +0 -0
  878. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/edge-cases/unicode-fields.md +0 -0
  879. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/ada-lovelace.md +0 -0
  880. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/alan-turing.md +0 -0
  881. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/anders-hejlsberg.md +0 -0
  882. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/andrej-karpathy.md +0 -0
  883. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/barbara-liskov.md +0 -0
  884. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/bjarne-stroustrup.md +0 -0
  885. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/brendan-eich.md +0 -0
  886. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/claude-shannon.md +0 -0
  887. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/dennis-ritchie.md +0 -0
  888. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/dijkstra.md +0 -0
  889. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/donald-knuth.md +0 -0
  890. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/fei-fei-li.md +0 -0
  891. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/geoffrey-hinton.md +0 -0
  892. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/grace-hopper.md +0 -0
  893. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/guido-van-rossum.md +0 -0
  894. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/james-gosling.md +0 -0
  895. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/john-carmack.md +0 -0
  896. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/ken-thompson.md +0 -0
  897. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/larry-page.md +0 -0
  898. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/leslie-lamport.md +0 -0
  899. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/linus-torvalds.md +0 -0
  900. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/margaret-hamilton.md +0 -0
  901. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/rasmus-lerdorf.md +0 -0
  902. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/richard-stallman.md +0 -0
  903. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/rob-pike.md +0 -0
  904. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/satoshi-nakamoto.md +0 -0
  905. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/tim-berners-lee.md +0 -0
  906. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/vint-cerf.md +0 -0
  907. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/yann-lecun.md +0 -0
  908. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/inference/people/yukihiro-matsumoto.md +0 -0
  909. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/schemas/Book.md +0 -0
  910. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/schemas/InvalidOffSchema.md +0 -0
  911. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/schemas/Meeting.md +0 -0
  912. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/schemas/Person.md +0 -0
  913. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/schemas/SoftwareProject.md +0 -0
  914. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/schemas/StrictSchema.md +0 -0
  915. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/valid/basic-memory.md +0 -0
  916. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/valid/explicit-ref-note.md +0 -0
  917. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/valid/no-schema-note.md +0 -0
  918. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/valid/paul-graham.md +0 -0
  919. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/valid/rich-hickey.md +0 -0
  920. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/valid/standup-2024-01-15.md +0 -0
  921. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/warnings/extra-observations.md +0 -0
  922. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/warnings/missing-multiple.md +0 -0
  923. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/warnings/missing-required.md +0 -0
  924. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/fixtures/schema/warnings/wrong-enum-value.md +0 -0
  925. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_build_context_underscore.py +0 -0
  926. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_build_context_validation.py +0 -0
  927. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_chatgpt_tools_integration.py +0 -0
  928. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_concurrent_write_integration.py +0 -0
  929. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_default_project_mode_integration.py +0 -0
  930. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_delete_directory_integration.py +0 -0
  931. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_delete_note_integration.py +0 -0
  932. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_edit_note_integration.py +0 -0
  933. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_lifespan_shutdown_sync_task_cancellation_integration.py +0 -0
  934. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_list_directory_integration.py +0 -0
  935. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_long_relation_type_integration.py +0 -0
  936. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_move_directory_integration.py +0 -0
  937. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_move_note_integration.py +0 -0
  938. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_observation_permalink_collision_integration.py +0 -0
  939. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_output_format_json_integration.py +0 -0
  940. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_pagination_integration.py +0 -0
  941. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_param_aliases_integration.py +0 -0
  942. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_permalink_collision_integration.py +0 -0
  943. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_project_management_integration.py +0 -0
  944. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_project_state_sync_integration.py +0 -0
  945. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_read_content_integration.py +0 -0
  946. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_read_note_integration.py +0 -0
  947. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_recreate_project_indexing_integration.py +0 -0
  948. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_search_integration.py +0 -0
  949. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_search_note_types_case_insensitive.py +0 -0
  950. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_single_project_mcp_integration.py +0 -0
  951. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_smoke_integration.py +0 -0
  952. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_string_params_integration.py +0 -0
  953. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_ui_sdk_integration.py +0 -0
  954. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_workspace_permalink_integration.py +0 -0
  955. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_write_note_integration.py +0 -0
  956. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/mcp/test_write_note_type_integration.py +0 -0
  957. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/read_cache/conftest.py +0 -0
  958. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/read_cache/test_api_read_cache.py +0 -0
  959. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/read_cache/test_materialization_invalidation.py +0 -0
  960. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/read_cache/test_mcp_read_cache.py +0 -0
  961. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/read_cache/test_read_cache_benchmark.py +0 -0
  962. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/read_cache/test_redis_read_cache.py +0 -0
  963. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/read_cache/test_runtime_invalidation.py +0 -0
  964. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/read_cache/test_search_read_cache.py +0 -0
  965. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/__init__.py +0 -0
  966. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/conftest.py +0 -0
  967. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/corpus.py +0 -0
  968. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/litellm_live_harness.py +0 -0
  969. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/metrics.py +0 -0
  970. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/report.py +0 -0
  971. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_embedding_provider_reuse.py +0 -0
  972. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_litellm_live_harness.py +0 -0
  973. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_litellm_live_models.py +0 -0
  974. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_milvus_lite.py +0 -0
  975. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_multiterm_semantic_queries.py +0 -0
  976. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_real_fastembed_reranker.py +0 -0
  977. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_reranker_latency.py +0 -0
  978. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_reranker_quality.py +0 -0
  979. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_search_diagnostics.py +0 -0
  980. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_semantic_coverage.py +0 -0
  981. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/semantic/test_semantic_quality.py +0 -0
  982. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_db_wal_mode.py +0 -0
  983. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_embedding_status_vec0.py +0 -0
  984. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_note_file_vacate_atomicity.py +0 -0
  985. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_note_materialization_lock_order.py +0 -0
  986. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_picoschema/__init__.py +0 -0
  987. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_picoschema/conftest.py +0 -0
  988. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_picoschema/helpers.py +0 -0
  989. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_picoschema/test_diff_integration.py +0 -0
  990. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_picoschema/test_inference_integration.py +0 -0
  991. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_picoschema/test_parser_integration.py +0 -0
  992. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_picoschema/test_validator_integration.py +0 -0
  993. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_postgres_dispose_cycle.py +0 -0
  994. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_project_index_delete_materialization_race.py +0 -0
  995. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_relation_generation_concurrency.py +0 -0
  996. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/test-int/test_search_performance_benchmark.py +0 -0
  997. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/Non-MarkdownFileSupport.pdf +0 -0
  998. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/README.md +0 -0
  999. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/Screenshot.png +0 -0
  1000. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/__init__.py +0 -0
  1001. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/test_container.py +0 -0
  1002. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/__init__.py +0 -0
  1003. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/conftest.py +0 -0
  1004. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_accepted_note_atomicity.py +0 -0
  1005. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_directory_router.py +0 -0
  1006. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_entity_observation_lock_order.py +0 -0
  1007. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_importer_router.py +0 -0
  1008. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_inspect_router.py +0 -0
  1009. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_knowledge_resolution_contract.py +0 -0
  1010. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_knowledge_router.py +0 -0
  1011. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_knowledge_router_telemetry.py +0 -0
  1012. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_memory_hydration.py +0 -0
  1013. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_memory_router.py +0 -0
  1014. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_orphan_router.py +0 -0
  1015. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_project_index_command.py +0 -0
  1016. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_project_router.py +0 -0
  1017. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_prompt_router.py +0 -0
  1018. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_resource_router.py +0 -0
  1019. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_schema_router.py +0 -0
  1020. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_search_hydration.py +0 -0
  1021. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_search_router.py +0 -0
  1022. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_search_router_telemetry.py +0 -0
  1023. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_utils_telemetry.py +0 -0
  1024. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/api/v2/test_workspace_permalink_headers.py +0 -0
  1025. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/cloud/test_bmignore_sync_filter_refresh.py +0 -0
  1026. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/cloud/test_cloud_api_client_and_utils.py +0 -0
  1027. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/cloud/test_project_sync_command.py +0 -0
  1028. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/cloud/test_rclone_config_and_bmignore_filters.py +0 -0
  1029. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/cloud/test_rclone_installer.py +0 -0
  1030. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/cloud/test_upload_command_routing.py +0 -0
  1031. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/cloud/test_upload_path.py +0 -0
  1032. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/cloud/test_webdav_client.py +0 -0
  1033. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/cloud/test_webdav_transfer.py +0 -0
  1034. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/conftest.py +0 -0
  1035. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_analytics.py +0 -0
  1036. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_auth_cli_auth.py +0 -0
  1037. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_auto_update.py +0 -0
  1038. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_ci_commands.py +0 -0
  1039. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cli_container.py +0 -0
  1040. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cli_schema.py +0 -0
  1041. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cli_telemetry.py +0 -0
  1042. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cli_tool_exit.py +0 -0
  1043. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cli_tool_json_output.py +0 -0
  1044. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cli_tool_rich_output.py +0 -0
  1045. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cli_tools.py +0 -0
  1046. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cloud_authentication.py +0 -0
  1047. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cloud_promo.py +0 -0
  1048. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_cloud_status.py +0 -0
  1049. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_coding_session_context.py +0 -0
  1050. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_command_utils.py +0 -0
  1051. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_config_command.py +0 -0
  1052. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_db_reindex.py +0 -0
  1053. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_db_reset_exit.py +0 -0
  1054. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_db_reset_zombie_check.py +0 -0
  1055. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_doctor_command.py +0 -0
  1056. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_hook_command.py +0 -0
  1057. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_ignore_utils.py +0 -0
  1058. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_import_chatgpt.py +0 -0
  1059. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_import_claude_conversations.py +0 -0
  1060. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_import_claude_projects.py +0 -0
  1061. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_import_memory_json.py +0 -0
  1062. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_inspect_command.py +0 -0
  1063. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_json_output.py +0 -0
  1064. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_man_command.py +0 -0
  1065. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_orphans_command.py +0 -0
  1066. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_project_add_with_local_path.py +0 -0
  1067. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_project_info_cloud_status.py +0 -0
  1068. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_project_info_errors.py +0 -0
  1069. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_project_list_and_ls.py +0 -0
  1070. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_project_remove_errors.py +0 -0
  1071. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_project_set_cloud_local.py +0 -0
  1072. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_restore_commands.py +0 -0
  1073. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_routing.py +0 -0
  1074. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_share_commands.py +0 -0
  1075. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_snapshot_commands.py +0 -0
  1076. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_status_wait_timeout.py +0 -0
  1077. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_update_command.py +0 -0
  1078. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_upload.py +0 -0
  1079. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_workspace_commands.py +0 -0
  1080. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cli/test_workspace_stub.py +0 -0
  1081. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cloud/test_cloud_services.py +0 -0
  1082. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cloud/test_note_content_materialization.py +0 -0
  1083. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cloud/test_note_content_read_service.py +0 -0
  1084. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/cloud/test_project_deletes.py +0 -0
  1085. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/conftest.py +0 -0
  1086. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/db/test_issue_254_foreign_key_constraints.py +0 -0
  1087. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/db/test_memory_db_session_isolation.py +0 -0
  1088. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/db/test_semantic_search_startup.py +0 -0
  1089. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/db/test_uvloop_policy.py +0 -0
  1090. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/conftest.py +0 -0
  1091. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/fixtures/claude_pre_compact.json +0 -0
  1092. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/fixtures/claude_session_start.json +0 -0
  1093. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/fixtures/codex_pre_compact.json +0 -0
  1094. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/fixtures/codex_session_start.json +0 -0
  1095. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/test_adapters.py +0 -0
  1096. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/test_archive.py +0 -0
  1097. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/test_envelope.py +0 -0
  1098. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/test_inbox.py +0 -0
  1099. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/hooks/test_uuid7.py +0 -0
  1100. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/importers/test_conversation_indexing.py +0 -0
  1101. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/importers/test_importer_base.py +0 -0
  1102. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/importers/test_importer_utils.py +0 -0
  1103. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/importers/test_project_zip_import.py +0 -0
  1104. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_filesystem_events.py +0 -0
  1105. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_inline_storage_event_processor.py +0 -0
  1106. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_accepted_note_repositories.py +0 -0
  1107. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_inline_result_recorder.py +0 -0
  1108. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_markdown_file_indexer.py +0 -0
  1109. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_move_content_updates.py +0 -0
  1110. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_project_index.py +0 -0
  1111. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_project_scan_parity.py +0 -0
  1112. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_project_vector_cleaner_wiring.py +0 -0
  1113. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_reconcile_file_reader.py +0 -0
  1114. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_runtime.py +0 -0
  1115. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_scheduler_task_failure.py +0 -0
  1116. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_schedulers.py +0 -0
  1117. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_watch_ignore_parity.py +0 -0
  1118. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_watch_orchestration.py +0 -0
  1119. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_watch_regular_file_parity.py +0 -0
  1120. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_watch_semantic_embedding.py +0 -0
  1121. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_local_watch_stress_parity.py +0 -0
  1122. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_project_index_surface.py +0 -0
  1123. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_repository_storage_event_project_resolution.py +0 -0
  1124. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_storage_event_operation_processor.py +0 -0
  1125. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_storage_event_orchestration.py +0 -0
  1126. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_watch_coordinator.py +0 -0
  1127. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/index/test_watch_service.py +0 -0
  1128. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_accepted_note_enqueue_runner.py +0 -0
  1129. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_accepted_note_mutation_runner.py +0 -0
  1130. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_accepted_note_search.py +0 -0
  1131. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_accepted_note_write_runner.py +0 -0
  1132. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_batch_index_search_writer.py +0 -0
  1133. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_batch_indexer.py +0 -0
  1134. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_batching.py +0 -0
  1135. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_change_planning.py +0 -0
  1136. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_directory_delete_runner.py +0 -0
  1137. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_embedding_index_planning.py +0 -0
  1138. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_external_file_delete_runner.py +0 -0
  1139. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_file_batch_runner.py +0 -0
  1140. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_file_index_checking.py +0 -0
  1141. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_file_index_models.py +0 -0
  1142. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_file_index_planning.py +0 -0
  1143. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_file_indexer.py +0 -0
  1144. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_forward_reference_resolution.py +0 -0
  1145. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_index_batch_runtime.py +0 -0
  1146. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_index_file_runner.py +0 -0
  1147. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_indexing_job_payloads.py +0 -0
  1148. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_input_file_adaptation.py +0 -0
  1149. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_link_resolution.py +0 -0
  1150. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_models.py +0 -0
  1151. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_note_content_batch_reconciliation.py +0 -0
  1152. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_note_content_read_repair_runner.py +0 -0
  1153. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_note_content_reconciler.py +0 -0
  1154. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_note_content_reconciliation.py +0 -0
  1155. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_note_file_delete_runner.py +0 -0
  1156. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_note_materialization_runner.py +0 -0
  1157. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_orphan_cleanup.py +0 -0
  1158. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_progress_models.py +0 -0
  1159. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_project_delete_acceptance.py +0 -0
  1160. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_project_delete_runner.py +0 -0
  1161. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_project_index_coordinator.py +0 -0
  1162. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_project_index_maintenance.py +0 -0
  1163. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_project_index_progress.py +0 -0
  1164. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_project_index_runner.py +0 -0
  1165. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_project_index_runtime.py +0 -0
  1166. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_project_index_workflow.py +0 -0
  1167. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_relation_persistence.py +0 -0
  1168. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_relation_resolution.py +0 -0
  1169. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_relation_resolution_scaling.py +0 -0
  1170. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_relation_search_refresh_retry.py +0 -0
  1171. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/indexing/test_vector_sync_planning.py +0 -0
  1172. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/__init__.py +0 -0
  1173. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_date_frontmatter_parsing.py +0 -0
  1174. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_entity_parser.py +0 -0
  1175. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_entity_parser_error_handling.py +0 -0
  1176. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_markdown_plugins.py +0 -0
  1177. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_markdown_processor.py +0 -0
  1178. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_markdown_utils.py +0 -0
  1179. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_observation_edge_cases.py +0 -0
  1180. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_parser_edge_cases.py +0 -0
  1181. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_relation_edge_cases.py +0 -0
  1182. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/markdown/test_task_detection.py +0 -0
  1183. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/clients/__init__.py +0 -0
  1184. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/clients/test_clients.py +0 -0
  1185. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/conftest.py +0 -0
  1186. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_async_client_force_local.py +0 -0
  1187. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_async_client_modes.py +0 -0
  1188. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_async_client_telemetry.py +0 -0
  1189. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_client_info.py +0 -0
  1190. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_client_schema.py +0 -0
  1191. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_client_telemetry.py +0 -0
  1192. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_first_connect_onboarding.py +0 -0
  1193. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_mcp_container.py +0 -0
  1194. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_mcp_note_type_normalization.py +0 -0
  1195. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_obsidian_yaml_formatting.py +0 -0
  1196. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_project_context.py +0 -0
  1197. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_project_context_scoped_key.py +0 -0
  1198. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_project_context_telemetry.py +0 -0
  1199. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_prompt_tool_delegation.py +0 -0
  1200. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_prompts.py +0 -0
  1201. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_read_note_request_counts.py +0 -0
  1202. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_recent_activity_prompt_modes.py +0 -0
  1203. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_resources.py +0 -0
  1204. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_search_total_exactness.py +0 -0
  1205. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_server_lifespan_branches.py +0 -0
  1206. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_server_telemetry.py +0 -0
  1207. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_basic_memory_diagnostics.py +0 -0
  1208. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_build_context.py +0 -0
  1209. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_contracts.py +0 -0
  1210. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_delete_note.py +0 -0
  1211. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_edit_note.py +0 -0
  1212. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_json_output_modes.py +0 -0
  1213. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_list_directory.py +0 -0
  1214. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_move_note.py +0 -0
  1215. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_project_management.py +0 -0
  1216. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_read_content.py +0 -0
  1217. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_read_note.py +0 -0
  1218. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_recent_activity.py +0 -0
  1219. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_resource.py +0 -0
  1220. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_schema.py +0 -0
  1221. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_search.py +0 -0
  1222. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_telemetry.py +0 -0
  1223. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_utils.py +0 -0
  1224. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_utils_cloud_auth.py +0 -0
  1225. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_view_note.py +0 -0
  1226. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_workspace_management.py +0 -0
  1227. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_write_note.py +0 -0
  1228. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_write_note_kebab_filenames.py +0 -0
  1229. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_tool_write_note_metadata.py +0 -0
  1230. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_ui_sdk.py +0 -0
  1231. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_ui_templates.py +0 -0
  1232. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/test_workspace_permalink_resolution.py +0 -0
  1233. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/tools/test_chatgpt_tools.py +0 -0
  1234. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/tools/test_mutating_memory_url_routing.py +0 -0
  1235. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/mcp/tools/test_search_notes_multi_project.py +0 -0
  1236. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/picoschema/__init__.py +0 -0
  1237. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/picoschema/test_diff.py +0 -0
  1238. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/picoschema/test_inference.py +0 -0
  1239. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/picoschema/test_parser.py +0 -0
  1240. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/picoschema/test_resolver.py +0 -0
  1241. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/picoschema/test_validator.py +0 -0
  1242. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_accepted_note_search_repository.py +0 -0
  1243. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_accepted_pending_entity_repository.py +0 -0
  1244. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_chunk_inspection.py +0 -0
  1245. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_distance_to_similarity.py +0 -0
  1246. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_entity_repository.py +0 -0
  1247. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_entity_repository_upsert.py +0 -0
  1248. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_entity_upsert_issue_187.py +0 -0
  1249. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_explicit_session_transactions.py +0 -0
  1250. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_external_vector_cleanup.py +0 -0
  1251. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_fastembed_provider.py +0 -0
  1252. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_fastembed_rerank_provider.py +0 -0
  1253. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_hybrid_fusion.py +0 -0
  1254. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_litellm_provider.py +0 -0
  1255. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_litellm_rerank_provider.py +0 -0
  1256. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_metadata_filters.py +0 -0
  1257. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_metadata_filters_edge_cases.py +0 -0
  1258. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_milvus_config.py +0 -0
  1259. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_milvus_index.py +0 -0
  1260. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_milvus_repository.py +0 -0
  1261. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_note_content_repository.py +0 -0
  1262. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_note_file_vacate_repository.py +0 -0
  1263. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_observation_repository.py +0 -0
  1264. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_openai_provider.py +0 -0
  1265. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_pgvector_index.py +0 -0
  1266. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_postgres_search_repository.py +0 -0
  1267. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_postgres_search_repository_unit.py +0 -0
  1268. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_prefixing_provider.py +0 -0
  1269. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_project_info_repository.py +0 -0
  1270. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_project_repository.py +0 -0
  1271. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_relation_repository.py +0 -0
  1272. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_repository.py +0 -0
  1273. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_rerank_pipeline.py +0 -0
  1274. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_rerank_provider_factory.py +0 -0
  1275. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_search_index_row.py +0 -0
  1276. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_search_relaxation.py +0 -0
  1277. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_search_relaxation_unicode_classes.py +0 -0
  1278. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_search_relaxed_rendering.py +0 -0
  1279. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_search_repository.py +0 -0
  1280. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_search_repository_edit_bug_fix.py +0 -0
  1281. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_search_text_with_metadata_filters.py +0 -0
  1282. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_search_trace.py +0 -0
  1283. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_semantic_chunking.py +0 -0
  1284. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_semantic_search_base.py +0 -0
  1285. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_semantic_vector_index.py +0 -0
  1286. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_semantic_vector_sync.py +0 -0
  1287. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_sqlite_vector_search_repository.py +0 -0
  1288. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_vector_manifest_generation_ownership.py +0 -0
  1289. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_vector_pagination.py +0 -0
  1290. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/repository/test_vector_threshold.py +0 -0
  1291. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_accepted_note_response_planning.py +0 -0
  1292. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_accepted_note_write_guards.py +0 -0
  1293. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_deleted_note_file_checksum.py +0 -0
  1294. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_deleted_note_response.py +0 -0
  1295. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_job_request_contracts.py +0 -0
  1296. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_note_content_read_planning.py +0 -0
  1297. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_note_content_store_materialization.py +0 -0
  1298. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_note_materialization_request_matching.py +0 -0
  1299. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_note_move_destination.py +0 -0
  1300. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_pending_note_materialization.py +0 -0
  1301. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_previous_materialized_note_file_delete.py +0 -0
  1302. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_process.py +0 -0
  1303. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_runtime_job_payloads.py +0 -0
  1304. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_sample_notes.py +0 -0
  1305. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/runtime/test_workflow_metadata.py +0 -0
  1306. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/schemas/test_base_timeframe_minimum.py +0 -0
  1307. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/schemas/test_memory_serialization.py +0 -0
  1308. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/schemas/test_memory_url.py +0 -0
  1309. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/schemas/test_memory_url_validation.py +0 -0
  1310. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/schemas/test_relation_response_reference_resolution.py +0 -0
  1311. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/schemas/test_schemas.py +0 -0
  1312. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/schemas/test_search.py +0 -0
  1313. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_bulk_link_resolver.py +0 -0
  1314. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_context_service.py +0 -0
  1315. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_directory_service.py +0 -0
  1316. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_entity_service.py +0 -0
  1317. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_entity_service_disable_permalinks.py +0 -0
  1318. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_entity_service_heading_boundaries.py +0 -0
  1319. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_entity_service_prepare.py +0 -0
  1320. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_entity_service_telemetry.py +0 -0
  1321. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_entity_service_write_result.py +0 -0
  1322. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_file_service.py +0 -0
  1323. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_initialization.py +0 -0
  1324. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_initialization_cloud_mode_branches.py +0 -0
  1325. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_link_resolver.py +0 -0
  1326. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_note_type_normalization.py +0 -0
  1327. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_project_removal_bug.py +0 -0
  1328. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_project_service.py +0 -0
  1329. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_project_service_cloud_info.py +0 -0
  1330. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_project_service_composition.py +0 -0
  1331. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_project_service_embedding_status.py +0 -0
  1332. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_project_service_operations.py +0 -0
  1333. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_search_service.py +0 -0
  1334. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_search_service_telemetry.py +0 -0
  1335. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_semantic_search.py +0 -0
  1336. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_semantic_timestamp_surfaces.py +0 -0
  1337. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/services/test_upsert_entity_optimization.py +0 -0
  1338. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_architecture_boundaries.py +0 -0
  1339. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_claude_issue_triage.py +0 -0
  1340. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_claude_plugin_hooks.py +0 -0
  1341. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_codex_plugin_package.py +0 -0
  1342. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_coerce.py +0 -0
  1343. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_config.py +0 -0
  1344. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_config_load_side_effects.py +0 -0
  1345. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_note_content_migration.py +0 -0
  1346. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_permalink_utils.py +0 -0
  1347. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_postgres_full_content_search_migration.py +0 -0
  1348. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_pr_title_workflow.py +0 -0
  1349. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_production_cascade_delete.py +0 -0
  1350. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_project_resolver.py +0 -0
  1351. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_rclone_commands.py +0 -0
  1352. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_read_cache_lifecycle.py +0 -0
  1353. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_read_cache_telemetry.py +0 -0
  1354. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_read_load_bench.py +0 -0
  1355. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_runtime.py +0 -0
  1356. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_runtime_observed_index_files.py +0 -0
  1357. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_runtime_storage_events.py +0 -0
  1358. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_runtime_storage_project_resolution.py +0 -0
  1359. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_semantic_vector_index_migration.py +0 -0
  1360. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_telemetry.py +0 -0
  1361. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/test_update_versions.py +0 -0
  1362. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_file_utils.py +0 -0
  1363. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_frontmatter_obsidian_compatible.py +0 -0
  1364. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_parse_tags.py +0 -0
  1365. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_permalink_formatting.py +0 -0
  1366. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_resolve_directory_casing.py +0 -0
  1367. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_setup_logging.py +0 -0
  1368. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_timezone_utils.py +0 -0
  1369. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_utf8_handling.py +0 -0
  1370. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_validate_project_path.py +0 -0
  1371. {basic_memory-0.23.2.dev3 → basic_memory-0.23.3.dev1}/tests/utils/test_workspace_context.py +0 -0
@@ -6,14 +6,14 @@
6
6
  },
7
7
  "metadata": {
8
8
  "description": "Official Basic Memory plugins from the canonical basic-memory repository",
9
- "version": "0.23.1"
9
+ "version": "0.23.2"
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "basic-memory",
14
14
  "source": "./plugins/claude-code",
15
15
  "description": "The bridge between Claude's working memory and Basic Memory's durable knowledge graph \u2014 session briefings, pre-compaction checkpoints, and capture reflexes",
16
- "version": "0.23.1",
16
+ "version": "0.23.2",
17
17
  "author": {
18
18
  "name": "Basic Machines"
19
19
  },
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: basic-memory
3
- Version: 0.23.2.dev3
3
+ Version: 0.23.3.dev1
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
@@ -29,7 +29,6 @@ Requires-Dist: mcp<3,>=2
29
29
  Requires-Dist: mdformat-frontmatter>=2.0.8
30
30
  Requires-Dist: mdformat-gfm>=0.3.7
31
31
  Requires-Dist: mdformat>=0.7.22
32
- Requires-Dist: nest-asyncio>=1.6.0
33
32
  Requires-Dist: openai>=1.100.2
34
33
  Requires-Dist: pillow>=11.1.0
35
34
  Requires-Dist: psutil>=5.9.0
@@ -39,7 +39,7 @@ from typing import Any, Callable
39
39
  from agent.memory_provider import MemoryProvider
40
40
  from tools.registry import tool_error
41
41
 
42
- __version__ = "0.23.1"
42
+ __version__ = "0.23.2"
43
43
 
44
44
  logger = logging.getLogger("hermes.memory.basic-memory")
45
45
 
@@ -1,5 +1,5 @@
1
1
  name: basic-memory
2
- version: 0.23.1
2
+ version: 0.23.2
3
3
  description: "Basic Memory — persistent knowledge graph backed by the basic-memory MCP server"
4
4
  manifest_version: 2
5
5
  api_version: 1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@basicmemory/openclaw-basic-memory",
3
- "version": "0.23.1",
3
+ "version": "0.23.2",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -6,14 +6,14 @@
6
6
  },
7
7
  "metadata": {
8
8
  "description": "Official plugins from Basic Machines for knowledge management and AI-assisted development",
9
- "version": "0.23.1"
9
+ "version": "0.23.2"
10
10
  },
11
11
  "plugins": [
12
12
  {
13
13
  "name": "basic-memory",
14
14
  "source": "./",
15
15
  "description": "The bridge between Claude's working memory and Basic Memory's durable knowledge graph \u2014 session briefings, pre-compaction checkpoints, and capture reflexes",
16
- "version": "0.23.1",
16
+ "version": "0.23.2",
17
17
  "author": {
18
18
  "name": "Basic Machines"
19
19
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "basic-memory",
3
3
  "description": "The bridge between Claude's working memory and Basic Memory's durable knowledge graph \u2014 session briefings, pre-compaction checkpoints, and capture reflexes",
4
- "version": "0.23.1",
4
+ "version": "0.23.2",
5
5
  "author": {
6
6
  "name": "Basic Machines"
7
7
  },
@@ -2,7 +2,7 @@
2
2
  # /// script
3
3
  # requires-python = ">=3.12"
4
4
  # dependencies = [
5
- # "basic-memory>=0.23.1",
5
+ # "basic-memory>=0.23.2",
6
6
  # # Direct pre-release pin so old uv resolves basic-memory (which
7
7
  # # requires this exact beta transitively) without enabling
8
8
  # # pre-releases for basic-memory itself. Keep in lockstep with
@@ -2,7 +2,7 @@
2
2
  # /// script
3
3
  # requires-python = ">=3.12"
4
4
  # dependencies = [
5
- # "basic-memory>=0.23.1",
5
+ # "basic-memory>=0.23.2",
6
6
  # # Direct pre-release pin so old uv resolves basic-memory (which
7
7
  # # requires this exact beta transitively) without enabling
8
8
  # # pre-releases for basic-memory itself. Keep in lockstep with
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codex",
3
- "version": "0.23.1",
3
+ "version": "0.23.2",
4
4
  "description": "A Codex-native bridge to Basic Memory for durable engineering context, decisions, and resumable checkpoints.",
5
5
  "author": {
6
6
  "name": "Basic Machines",
@@ -2,7 +2,7 @@
2
2
  # /// script
3
3
  # requires-python = ">=3.12"
4
4
  # dependencies = [
5
- # "basic-memory @ git+https://github.com/basicmachines-co/basic-memory@v0.23.1",
5
+ # "basic-memory @ git+https://github.com/basicmachines-co/basic-memory@v0.23.2",
6
6
  # # Direct pre-release pin so old uv resolves basic-memory (which
7
7
  # # requires this exact beta transitively) without enabling
8
8
  # # pre-releases broadly. Keep in lockstep with core pyproject.
@@ -2,7 +2,7 @@
2
2
  # /// script
3
3
  # requires-python = ">=3.12"
4
4
  # dependencies = [
5
- # "basic-memory @ git+https://github.com/basicmachines-co/basic-memory@v0.23.1",
5
+ # "basic-memory @ git+https://github.com/basicmachines-co/basic-memory@v0.23.2",
6
6
  # # Direct pre-release pin so old uv resolves basic-memory (which
7
7
  # # requires this exact beta transitively) without enabling
8
8
  # # pre-releases broadly. Keep in lockstep with core pyproject.
@@ -35,7 +35,6 @@ dependencies = [
35
35
  "pytest-aio>=1.9.0",
36
36
  "aiofiles>=24.1.0",
37
37
  "asyncpg>=0.30.0",
38
- "nest-asyncio>=1.6.0", # For Alembic migrations with Postgres
39
38
  "pytest-asyncio>=1.2.0",
40
39
  "psycopg==3.3.1",
41
40
  "mdformat>=0.7.22",
@@ -6,12 +6,12 @@
6
6
  "url": "https://github.com/basicmachines-co/basic-memory.git",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.23.1",
9
+ "version": "0.23.2",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "pypi",
13
13
  "identifier": "basic-memory",
14
- "version": "0.23.1",
14
+ "version": "0.23.2",
15
15
  "runtimeHint": "uvx",
16
16
  "runtimeArguments": [
17
17
  {
@@ -1,7 +1,7 @@
1
1
  """basic-memory - Local-first knowledge management combining Zettelkasten with knowledge graphs"""
2
2
 
3
3
  # Package version - updated by release automation
4
- __version__ = "0.23.1"
4
+ __version__ = "0.23.2"
5
5
 
6
6
  # API version for FastAPI - independent of package version
7
7
  __api_version__ = "v2"
@@ -2,34 +2,24 @@
2
2
 
3
3
  import asyncio
4
4
  import os
5
- import sys
6
5
  from contextlib import suppress
7
6
  from logging.config import fileConfig
8
7
 
9
- from loguru import logger
10
8
  from sqlalchemy import engine_from_config, pool
11
9
  from sqlalchemy.ext.asyncio import AsyncEngine, create_async_engine
12
10
 
13
11
  from alembic import context
14
12
 
15
13
  from basic_memory.config import ConfigManager
16
- from basic_memory.migration_loop import running_on_uvloop
17
14
 
18
- # Allow nested event loops (needed for pytest-asyncio and other async contexts).
19
- # nest_asyncio cannot patch a uvloop loop or Python 3.14+; in those cases we skip
20
- # it and rely on the thread-based fallback in run_migrations_online() instead
21
- # (see basic_memory.migration_loop for why uvloop must be detected up front).
22
- if sys.version_info < (3, 14) and not running_on_uvloop():
23
- try:
24
- import nest_asyncio
25
-
26
- nest_asyncio.apply()
27
- except (ImportError, ValueError) as exc:
28
- # Trigger: nest_asyncio is absent (ImportError) or refuses to patch the
29
- # running loop (ValueError).
30
- # Outcome: log at DEBUG (observable, not noisy) and fall through to the
31
- # thread-based migration fallback.
32
- logger.debug(f"nest_asyncio not applied ({exc!r}); using thread-based migration fallback")
15
+ # Constraint: never apply nest_asyncio here. It replaces asyncio.run and
16
+ # run_until_complete process-wide, and its run_until_complete returns the moment
17
+ # the root task finishes without running that task's done-callbacks. anyio stops
18
+ # its worker threads from exactly such a callback, so any request that touched
19
+ # the thread pool left a non-daemon worker parked forever and one-shot CLI
20
+ # commands hung at interpreter exit on Python < 3.14 (#1333, #1345). Callers
21
+ # already inside a running loop (pytest-asyncio, the API lifespan) take the
22
+ # thread fallback in run_migrations_online(), the only path 3.14 ever used.
33
23
 
34
24
  # Trigger: only set test env when actually running under pytest
35
25
  # Why: alembic/env.py is imported during normal operations (MCP server startup, migrations)
@@ -12,12 +12,16 @@ from fastapi import Depends, Request
12
12
  from basic_memory.config import BasicMemoryConfig
13
13
 
14
14
 
15
- def get_app_config(request: Request) -> BasicMemoryConfig:
15
+ async def get_app_config(request: Request) -> BasicMemoryConfig:
16
16
  """Resolve the application configuration from the composition root.
17
17
 
18
18
  API requests read the container the lifespan stored on ``app.state``.
19
19
  Requests served without a lifespan (the CLI/MCP local ASGI flow) fall back
20
20
  to the API composition root, which creates a container on demand.
21
+
22
+ Declared ``async`` although it never awaits: FastAPI runs *sync* dependencies
23
+ on anyio's worker-thread pool, and an attribute read is not worth a thread
24
+ hop per request — nor the non-daemon worker it leaves parked (#1345).
21
25
  """
22
26
  container = getattr(request.app.state, "container", None)
23
27
  if container is not None:
@@ -12,8 +12,12 @@ from basic_memory.read_cache.policy import (
12
12
  )
13
13
 
14
14
 
15
- def get_read_cache(request: Request) -> ReadCache | None:
16
- """Return the optional host-injected cache backend."""
15
+ async def get_read_cache(request: Request) -> ReadCache | None:
16
+ """Return the optional host-injected cache backend.
17
+
18
+ ``async`` for the same reason as ``get_app_config``: a sync dependency would
19
+ hop to anyio's worker pool just to read an attribute (#1345).
20
+ """
17
21
  try:
18
22
  container = request.app.state.container
19
23
  except AttributeError:
@@ -4,10 +4,49 @@ These tests verify that CLI commands exit cleanly without hanging,
4
4
  which was a bug fixed in the database initialization refactor.
5
5
  """
6
6
 
7
+ import os
7
8
  import subprocess
8
9
  from pathlib import Path
9
10
 
10
11
 
12
+ def test_bm_schema_validate_exits_cleanly(tmp_path):
13
+ """Regression test (#1333, #1345): a command that drives the API in-process must exit.
14
+
15
+ ``bm schema validate`` runs migrations (importing alembic/env.py) and then
16
+ serves one request over the local ASGI transport. On Python < 3.14 the
17
+ interpreter used to block at shutdown on a non-daemon anyio worker thread
18
+ that nest_asyncio's patched event loop never stopped.
19
+ """
20
+ home = tmp_path / "home"
21
+ home.mkdir()
22
+ # A pristine profile: the developer's or CI's Basic Memory settings must not
23
+ # leak in, and the promo/analytics path stays out of the picture.
24
+ env = {
25
+ key: value
26
+ for key, value in os.environ.items()
27
+ if not key.startswith("BASIC_MEMORY_") and key != "PYTEST_CURRENT_TEST"
28
+ }
29
+ env.update(
30
+ HOME=str(home),
31
+ USERPROFILE=str(home),
32
+ BASIC_MEMORY_HOME=str(home / "basic-memory"),
33
+ BASIC_MEMORY_CONFIG_DIR=str(home / ".basic-memory"),
34
+ BASIC_MEMORY_NO_PROMOS="1",
35
+ )
36
+ result = subprocess.run(
37
+ ["uv", "run", "bm", "schema", "validate", "--json", "--local"],
38
+ capture_output=True,
39
+ text=True,
40
+ env=env,
41
+ # Guards against a hang, not a performance budget: migrations plus one
42
+ # in-process request take a few seconds on a loaded CI runner.
43
+ timeout=90,
44
+ cwd=Path(__file__).parent.parent.parent,
45
+ )
46
+ assert result.returncode == 0, result.stderr
47
+ assert result.stdout.lstrip().startswith("{"), result.stdout
48
+
49
+
11
50
  def test_bm_version_exits_cleanly():
12
51
  """Test that 'bm --version' exits cleanly within timeout."""
13
52
  # Use uv run to ensure correct environment
@@ -1,5 +1,6 @@
1
1
  """Regression tests for Alembic env async migration helpers."""
2
2
 
3
+ import asyncio
3
4
  import importlib.util
4
5
  import uuid
5
6
  from contextlib import nullcontext
@@ -61,6 +62,19 @@ def load_alembic_env_module(monkeypatch, tmp_path):
61
62
  return module
62
63
 
63
64
 
65
+ def test_env_import_leaves_asyncio_unpatched(monkeypatch, tmp_path):
66
+ """env.py must not apply nest_asyncio (#1333, #1345).
67
+
68
+ nest_asyncio swaps asyncio.run/run_until_complete process-wide and its loop
69
+ skips the root task's done-callbacks — the hook anyio uses to stop its worker
70
+ threads — so a CLI process that ran migrations hung at interpreter exit.
71
+ """
72
+ load_alembic_env_module(monkeypatch, tmp_path)
73
+
74
+ assert not getattr(asyncio, "_nest_patched", False)
75
+ assert asyncio.run.__module__ == "asyncio.runners"
76
+
77
+
64
78
  def test_asyncio_run_failure_closes_migration_coroutine(monkeypatch, tmp_path):
65
79
  """The running-loop fallback should not leak an un-awaited coroutine."""
66
80
  env_module = load_alembic_env_module(monkeypatch, tmp_path)
@@ -1,11 +1,20 @@
1
1
  """Tests for dependency injection functions in the deps package."""
2
2
 
3
+ import threading
4
+
3
5
  import pytest
4
6
  from fastapi import FastAPI, HTTPException, Request
7
+ from httpx import ASGITransport, AsyncClient
5
8
 
6
9
  from basic_memory.api import container as container_module
7
10
  from basic_memory.api.container import ApiContainer, resolve_container
8
- from basic_memory.deps import get_app_config, get_read_cache, validate_project_external_id
11
+ from basic_memory.deps import (
12
+ AppConfigDep,
13
+ ReadCacheDep,
14
+ get_app_config,
15
+ get_read_cache,
16
+ validate_project_external_id,
17
+ )
9
18
  from basic_memory.models.project import Project
10
19
  from basic_memory.repository.project_repository import ProjectRepository
11
20
  from basic_memory.runtime.mode import resolve_runtime_mode
@@ -15,21 +24,31 @@ def _request_for(app: FastAPI) -> Request:
15
24
  return Request({"type": "http", "app": app})
16
25
 
17
26
 
18
- def test_get_app_config_reads_lifespan_container(app_config):
27
+ def _anyio_worker_threads() -> list[threading.Thread]:
28
+ return [
29
+ thread
30
+ for thread in threading.enumerate()
31
+ if thread.name == "AnyIO worker thread" and thread.is_alive()
32
+ ]
33
+
34
+
35
+ @pytest.mark.asyncio
36
+ async def test_get_app_config_reads_lifespan_container(app_config):
19
37
  """API requests get the config the lifespan stored on app.state."""
20
38
  app = FastAPI()
21
39
  app.state.container = ApiContainer(
22
40
  config=app_config, mode=resolve_runtime_mode(is_test_env=True)
23
41
  )
24
42
 
25
- assert get_app_config(_request_for(app)) is app_config
43
+ assert await get_app_config(_request_for(app)) is app_config
26
44
 
27
45
 
28
- def test_get_app_config_falls_back_to_composition_root(app_config, config_manager):
46
+ @pytest.mark.asyncio
47
+ async def test_get_app_config_falls_back_to_composition_root(app_config, config_manager):
29
48
  """Requests without a lifespan (CLI/MCP local ASGI) resolve via the composition root."""
30
49
  app = FastAPI()
31
50
 
32
- resolved = get_app_config(_request_for(app))
51
+ resolved = await get_app_config(_request_for(app))
33
52
 
34
53
  # resolve_container() reads the config the config_manager fixture wrote to disk.
35
54
  assert resolved.default_project == app_config.default_project
@@ -44,7 +63,8 @@ def test_resolve_container_prefers_installed_container(app_config, monkeypatch):
44
63
  assert resolve_container() is installed
45
64
 
46
65
 
47
- def test_get_read_cache_reads_lifespan_container(app_config):
66
+ @pytest.mark.asyncio
67
+ async def test_get_read_cache_reads_lifespan_container(app_config):
48
68
  """API requests preserve the container's absent cache backend."""
49
69
  app = FastAPI()
50
70
  app.state.container = ApiContainer(
@@ -52,10 +72,11 @@ def test_get_read_cache_reads_lifespan_container(app_config):
52
72
  mode=resolve_runtime_mode(is_test_env=True),
53
73
  )
54
74
 
55
- assert get_read_cache(_request_for(app)) is None
75
+ assert await get_read_cache(_request_for(app)) is None
56
76
 
57
77
 
58
- def test_get_read_cache_falls_back_to_composition_root(app_config, monkeypatch):
78
+ @pytest.mark.asyncio
79
+ async def test_get_read_cache_falls_back_to_composition_root(app_config, monkeypatch):
59
80
  """Off-lifespan requests preserve the composition root's absent cache backend."""
60
81
  app = FastAPI()
61
82
  installed = ApiContainer(
@@ -64,7 +85,36 @@ def test_get_read_cache_falls_back_to_composition_root(app_config, monkeypatch):
64
85
  )
65
86
  monkeypatch.setattr(container_module, "_container", installed)
66
87
 
67
- assert get_read_cache(_request_for(app)) is None
88
+ assert await get_read_cache(_request_for(app)) is None
89
+
90
+
91
+ @pytest.mark.asyncio
92
+ async def test_config_and_read_cache_deps_resolve_on_the_event_loop(app_config):
93
+ """Neither provider may hop to anyio's worker pool to read an attribute (#1345).
94
+
95
+ A sync FastAPI dependency runs on a non-daemon worker thread that anyio parks
96
+ for reuse, so a one-shot CLI process then depends on that thread being stopped
97
+ at loop exit. Resolving on the loop removes the dependency on that path.
98
+ """
99
+ app = FastAPI()
100
+ app.state.container = ApiContainer(
101
+ config=app_config, mode=resolve_runtime_mode(is_test_env=True)
102
+ )
103
+
104
+ @app.get("/probe")
105
+ async def probe(config: AppConfigDep, read_cache: ReadCacheDep) -> dict[str, str | None]:
106
+ return {"default_project": config.default_project, "read_cache": repr(read_cache)}
107
+
108
+ workers_before = len(_anyio_worker_threads())
109
+
110
+ async with AsyncClient(transport=ASGITransport(app=app), base_url="http://test") as client:
111
+ response = await client.get("/probe")
112
+
113
+ assert response.status_code == 200
114
+ assert response.json() == {"default_project": app_config.default_project, "read_cache": "None"}
115
+ # Idle workers left by earlier tests may still be winding down, so only
116
+ # growth is a regression.
117
+ assert len(_anyio_worker_threads()) <= workers_before
68
118
 
69
119
 
70
120
  @pytest.mark.asyncio
@@ -305,7 +305,6 @@ dependencies = [
305
305
  { name = "mdformat" },
306
306
  { name = "mdformat-frontmatter" },
307
307
  { name = "mdformat-gfm" },
308
- { name = "nest-asyncio" },
309
308
  { name = "openai" },
310
309
  { name = "pillow" },
311
310
  { name = "psutil" },
@@ -385,7 +384,6 @@ requires-dist = [
385
384
  { name = "mdformat", specifier = ">=0.7.22" },
386
385
  { name = "mdformat-frontmatter", specifier = ">=2.0.8" },
387
386
  { name = "mdformat-gfm", specifier = ">=0.3.7" },
388
- { name = "nest-asyncio", specifier = ">=1.6.0" },
389
387
  { name = "openai", specifier = ">=1.100.2" },
390
388
  { name = "pillow", specifier = ">=11.1.0" },
391
389
  { name = "psutil", specifier = ">=5.9.0" },
@@ -2423,15 +2421,6 @@ wheels = [
2423
2421
  { url = "https://files.pythonhosted.org/packages/81/08/7036c080d7117f28a4af526d794aab6a84463126db031b007717c1a6676e/multidict-6.7.1-py3-none-any.whl", hash = "sha256:55d97cc6dae627efa6a6e548885712d4864b81110ac76fa4e534c03819fa4a56", size = 12319, upload-time = "2026-01-26T02:46:44.004Z" },
2424
2422
  ]
2425
2423
 
2426
- [[package]]
2427
- name = "nest-asyncio"
2428
- version = "1.6.0"
2429
- source = { registry = "https://pypi.org/simple" }
2430
- sdist = { url = "https://files.pythonhosted.org/packages/83/f8/51569ac65d696c8ecbee95938f89d4abf00f47d58d48f6fbabfe8f0baefe/nest_asyncio-1.6.0.tar.gz", hash = "sha256:6f172d5449aca15afd6c646851f4e31e02c598d553a667e38cafa997cfec55fe", size = 7418, upload-time = "2024-01-21T14:25:19.227Z" }
2431
- wheels = [
2432
- { url = "https://files.pythonhosted.org/packages/a0/c4/c2971a3ba4c6103a3d10c4b0f24f461ddc027f0f09763220cf35ca1401b3/nest_asyncio-1.6.0-py3-none-any.whl", hash = "sha256:87af6efd6b5e897c81050477ef65c62e2b2f35d51703cae01aff2905b1852e1c", size = 5195, upload-time = "2024-01-21T14:25:17.223Z" },
2433
- ]
2434
-
2435
2424
  [[package]]
2436
2425
  name = "nodeenv"
2437
2426
  version = "1.10.0"
@@ -1,34 +0,0 @@
1
- """Pure helpers for how Alembic bridges async migrations across event loops.
2
-
3
- Extracted from ``alembic/env.py`` so these two decisions are unit-testable:
4
- env.py runs migrations at import time and cannot be imported in a test, but the
5
- loop-detection and error-classification logic is exactly what regresses, so it
6
- lives here where it can be covered directly.
7
- """
8
-
9
- from __future__ import annotations
10
-
11
- import asyncio
12
-
13
-
14
- def running_on_uvloop() -> bool:
15
- """Return True when the active asyncio policy is uvloop.
16
-
17
- The Postgres backend installs the uvloop policy before the event loop starts
18
- (#831/#877). nest_asyncio cannot patch a uvloop loop, but depending on the
19
- nest_asyncio version ``apply()`` may NOT raise the ValueError we expect — it
20
- can silently mis-patch the stdlib loop instead. The later ``asyncio.run()``
21
- then fails with "this event loop is already running" rather than the standard
22
- "cannot be called from a running event loop", which the thread-based fallback
23
- would not recognize, crashing startup. Detecting uvloop up front lets env.py
24
- skip nest_asyncio entirely and stay on the standard running-loop error path.
25
- """
26
- try:
27
- import uvloop
28
- except ImportError:
29
- return False
30
- # Constraint: on supported Python 3.12-3.13 this helper runs before a loop
31
- # exists, so the active policy is the only observable uvloop signal. Python
32
- # 3.14+ skips this helper in alembic/env.py; remove it with the policy seam.
33
- policy = asyncio.get_event_loop_policy() # ty: ignore[deprecated]
34
- return isinstance(policy, uvloop.EventLoopPolicy)
@@ -1,33 +0,0 @@
1
- """Unit tests for the Alembic migration loop helpers.
2
-
3
- These guard the exact decisions that broke local Postgres startup: nest_asyncio
4
- mis-patching a uvloop loop, and the fallback failing to recognize the resulting
5
- error. env.py itself can't be imported in a test (it runs migrations at import),
6
- so the logic lives in basic_memory.migration_loop where it can be covered.
7
- """
8
-
9
- import asyncio
10
- import sys
11
-
12
- import pytest
13
-
14
- from basic_memory import migration_loop
15
-
16
-
17
- @pytest.mark.skipif(sys.platform == "win32", reason="uvloop is not available on Windows")
18
- def test_running_on_uvloop_true_when_policy_is_uvloop(monkeypatch):
19
- import uvloop
20
-
21
- monkeypatch.setattr(asyncio, "get_event_loop_policy", lambda: uvloop.EventLoopPolicy())
22
- assert migration_loop.running_on_uvloop() is True
23
-
24
-
25
- def test_running_on_uvloop_false_for_default_policy(monkeypatch):
26
- monkeypatch.setattr(asyncio, "get_event_loop_policy", lambda: object())
27
- assert migration_loop.running_on_uvloop() is False
28
-
29
-
30
- def test_running_on_uvloop_false_when_uvloop_unimportable(monkeypatch):
31
- # Simulate uvloop not installed (e.g. Windows): import raises -> False.
32
- monkeypatch.setitem(sys.modules, "uvloop", None)
33
- assert migration_loop.running_on_uvloop() is False