| .. |
|
benchmarks
|
test(mcp): migrate _kg monkeypatches to _get_kg (#1136)
|
2026-05-03 17:43:00 +05:00 |
|
_backend_conformance.py
|
feat: add pgvector backend + namespace-isolation conformance contract
|
2026-06-05 21:41:21 -03:00 |
|
_chroma_palace_helper.py
|
fix(backends): require SQLite magic header for chroma + sqlite_exact detect() (#1893) (#1896)
|
2026-06-28 18:01:59 -03:00 |
|
conftest.py
|
feat(mcp): add since/before date filter to list_drawers (#1128) (#1891)
|
2026-06-28 18:24:58 -03:00 |
|
test_antigravity_hooks_install.py
|
feat: add Antigravity IDE support (plugin, MCP, skill, hooks, docs, tests)
|
2026-05-27 19:19:17 +10:00 |
|
test_antigravity_hooks_shell.py
|
fix(antigravity): resolve interpreter from console-script shebang
|
2026-05-31 10:41:09 +10:00 |
|
test_antigravity_plugin_manifest.py
|
feat(antigravity): add recall skill, optional rule, shared protocol
|
2026-06-11 13:09:40 +10:00 |
|
test_backend_conformance.py
|
feat: add pgvector backend + namespace-isolation conformance contract
|
2026-06-05 21:41:21 -03:00 |
|
test_backends.py
|
fix(backends): require SQLite magic header for chroma + sqlite_exact detect() (#1893) (#1896)
|
2026-06-28 18:01:59 -03:00 |
|
test_backfill_authored_at.py
|
feat(convo): preserve authored timestamp from transcripts (#1890)
|
2026-06-28 18:13:06 -03:00 |
|
test_backups.py
|
fix(backups): add max_backups retention to bound backup disk usage
|
2026-06-05 14:52:06 -04:00 |
|
test_chroma_collection_lock.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_claude_plugin_hook_config.py
|
fix(claude-plugin): resolve SessionEnd merge semantics
|
2026-06-19 13:44:52 +00:00 |
|
test_claude_plugin_hook_wrappers.py
|
test: normalize wrapper script path for bash on Windows
|
2026-04-19 10:34:11 +02:00 |
|
test_clean_lone_surrogates.py
|
fix(backends): keep single-string documents whole in surrogate sanitiser
|
2026-06-01 17:19:10 -05:00 |
|
test_clean_nul_bytes.py
|
fix: sanitize embedded NUL bytes before they reach ChromaDB
|
2026-07-06 09:23:35 -03:00 |
|
test_cli.py
|
fix(repair): require clean SQLite recovery finalization
|
2026-07-14 19:12:56 -03:00 |
|
test_cli_hallways.py
|
fix: scope hallway reads and deletion to selected palace
|
2026-07-14 19:40:29 -03:00 |
|
test_closet_llm.py
|
style: ruff format tests/test_hooks_cli.py with CI-pinned ruff 0.4.x
|
2026-05-23 12:05:34 -04:00 |
|
test_closets.py
|
test: stabilize closet boost fixture on Windows
|
2026-06-14 15:17:01 -03:00 |
|
test_collection_metric_invariant.py
|
fix(test): use tmp_path for full-stack invariant test (Windows CI)
|
2026-04-25 00:39:37 -03:00 |
|
test_collision_scan.py
|
fix(ids): delimit hash inputs to prevent drawer_id collisions (#80)
|
2026-05-30 12:44:47 -07:00 |
|
test_config.py
|
fix: scope derived graph state to explicit palace
|
2026-07-14 19:22:06 -03:00 |
|
test_config_extra.py
|
test(config): make palace_path tests portable across POSIX and Windows
|
2026-04-24 11:13:51 +02:00 |
|
test_config_palace_path.py
|
fix: expand tilde in palace_path when read from config file\n\nMempalaceConfig.palace_path correctly called os.path.expanduser() for\nenv-var paths but not for paths read from config.json. If config.json\nstores palace_path as '~/.mempalace/palace' (the default written by\ninit), the tilde was returned unexpanded.\n\nDownstream callers such as cli.py cmd_mine did call expanduser when\n--palace was passed explicitly, but fell through to MempalaceConfig()\nwhen no flag was given, inheriting the unexpanded string. Python's\nos.makedirs and chromadb.PersistentClient treat a leading tilde as a\nliteral directory name rather than the home directory, so the palace\nwas silently written to a CWD-relative path such as\nmy_project/~/.mempalace/palace.\n\nThe fix is a single os.path.expanduser() call on line 343 of\nconfig.py, mirroring the existing env-var branch on line 342. Since\nDEFAULT_PALACE_PATH is already expanded at module load (line 197),\nexpanduser on an absolute path is a no-op, so the default case is\nunaffected.\n\nSymptoms: scattered {project}/~/.mempalace/palace directories, palace\nalways appears empty after mine, search returns Collection does not\nexist, launchd-driven nightly mine writes to a different location than\ninteractive mine.\n\nCo-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>n (#1865)
|
2026-06-26 00:09:51 -03:00 |
|
test_convo_miner.py
|
fix(convo_miner): treat transcripts as mutable, not immutable
|
2026-07-07 16:41:22 -04:00 |
|
test_convo_miner_size_cap.py
|
Raise convo_miner MAX_FILE_SIZE cap 10 MB → 500 MB
|
2026-04-18 12:52:01 -03:00 |
|
test_convo_miner_unit.py
|
style: ruff format test_convo_miner_unit.py (CI lint)
|
2026-07-14 16:43:05 +02:00 |
|
test_convo_scanner.py
|
fix(llm): tighter refinement — word boundaries, JSON extraction, authoritative sources
|
2026-04-24 01:30:40 -03:00 |
|
test_corpus_origin.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_corpus_origin_integration.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_cursor_hooks_install.py
|
fix(cursor): address gemini-code-assist review on PR #1632
|
2026-05-27 14:17:36 +10:00 |
|
test_cursor_hooks_shell.py
|
test: update Cursor followup assertion for checkpoint tool
|
2026-06-22 13:54:09 +10:00 |
|
test_cursor_plugin_manifest.py
|
feat: add mempalace-recall skill and optional Cursor recall rule
|
2026-06-10 15:40:35 +10:00 |
|
test_daemon.py
|
fix: keep status from taking writer lease
|
2026-07-06 09:26:16 -03:00 |
|
test_dedup.py
|
feat: add pluggable vector backends
|
2026-06-02 21:38:53 -03:00 |
|
test_dialect.py
|
fix: align cmd_compress dict keys with compression_stats() return values (#569)
|
2026-04-11 16:16:31 -07:00 |
|
test_distance_metric.py
|
feat(searcher): metric-aware distance→similarity conversion (RFC 001 §10, #1726)
|
2026-06-08 02:48:26 -03:00 |
|
test_dynamics.py
|
Merge origin/develop into feat/benchmark-multilingual
|
2026-05-24 13:18:08 -03:00 |
|
test_embedder_identity.py
|
feat(backends): shared embedder-identity sidecar + qdrant identity (RFC 001, #1730)
|
2026-06-08 10:20:45 -03:00 |
|
test_embedding.py
|
fix: address PR review feedback (preserve "unknown" label; use super().model)
|
2026-06-20 18:05:15 -03:00 |
|
test_embedding_wrapper.py
|
fix(backends): forward facet_counts + get_all_metadata in EmbeddingCollection
|
2026-06-29 02:22:10 +00:00 |
|
test_embeddinggemma.py
|
perf(embedding): cap ORT intra-op threads so a background mine doesn't pin every core (#1068)
|
2026-06-20 17:47:22 -03:00 |
|
test_empty_chromadb_results.py
|
fix(searcher): guard against empty ChromaDB query results (#195) (#865)
|
2026-04-15 00:26:38 -07:00 |
|
test_entities.py
|
feat(graph): auto-populate the associative graph from mined sessions (#1895)
|
2026-06-28 19:44:11 -03:00 |
|
test_entity_detector.py
|
feat: add LaTeX (.tex, .bib) to readable and prose extensions
|
2026-06-29 07:25:50 +00:00 |
|
test_entity_registry.py
|
fix(entity_registry): clean up .tmp sidecar on write or rename failure (#1373)
|
2026-05-10 12:56:50 +02:00 |
|
test_exporter.py
|
fix(exporter): refuse symlinks at file targets and skip tests on Windows
|
2026-05-07 12:51:47 -03:00 |
|
test_fact_checker.py
|
fix(tests): run fact_checker __main__ via subprocess to clear runpy warning
|
2026-06-13 11:11:22 -04:00 |
|
test_format_miner.py
|
fix: scope derived graph state to explicit palace
|
2026-07-14 19:22:06 -03:00 |
|
test_general_extractor.py
|
Merge origin/develop into feat/benchmark-multilingual
|
2026-05-24 13:18:08 -03:00 |
|
test_hall_detection.py
|
fix: README audit — 42 TDD tests + hall detection + 7 claim fixes (#835)
|
2026-04-13 17:11:11 -07:00 |
|
test_hallways.py
|
fix: scope hallway reads and deletion to selected palace
|
2026-07-14 19:40:29 -03:00 |
|
test_hallways_pagination.py
|
fixup(hallways): drop _HALLWAY_FILE back-compat shim, migrate existing tests to resolver
|
2026-06-11 19:11:52 +00:00 |
|
test_hallways_palace_scoped.py
|
fixup(hallways): address gemini-code-assist review on PR #1780
|
2026-06-11 19:18:54 +00:00 |
|
test_hnsw_capacity.py
|
Merge pull request #1849 from undeadindustries/fix/1843-recovery-guidance
|
2026-06-22 12:35:34 -03:00 |
|
test_hnsw_payload_health.py
|
fix(chroma): stop quarantining valid all-layer-0 HNSW segments (#1716)
|
2026-06-26 00:27:36 -03:00 |
|
test_hook_shell.py
|
fix(hooks): typo regression addressed
|
2026-06-13 06:37:26 +00:00 |
|
test_hooks_bash_compat.py
|
feat(hooks): add a budget-safe SessionEnd save hook for clean exits (#1341)
|
2026-06-19 13:00:14 +00:00 |
|
test_hooks_cli.py
|
Fix/wing slug special chars (#1852)
|
2026-06-25 23:59:05 -03:00 |
|
test_hooks_shell.py
|
feat(hooks): add a budget-safe SessionEnd save hook for clean exits (#1341)
|
2026-06-19 13:00:14 +00:00 |
|
test_hybrid_candidate_union.py
|
feat(search): add an optional source_file filter to mempalace_search (#1815)
|
2026-06-21 18:20:12 +05:00 |
|
test_hybrid_search.py
|
feat(convo): preserve authored timestamp from transcripts (#1890)
|
2026-06-28 18:13:06 -03:00 |
|
test_i18n.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_i18n_lang_case.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_ids.py
|
fix(ids): simplify v3 length-prefixed hashing
|
2026-06-12 07:39:57 +00:00 |
|
test_init.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_init_gitignore_protection.py
|
fix(init): auto-add per-project files to .gitignore in git repos (#185) (#866)
|
2026-04-15 00:26:41 -07:00 |
|
test_instructions_cli.py
|
fix: add explicit UTF-8 encoding to read_text() calls (#776)
|
2026-04-16 16:00:29 +05:00 |
|
test_kg_thread_safety.py
|
fix: add missing self._lock to KnowledgeGraph.close()
|
2026-04-14 13:09:10 -07:00 |
|
test_knowledge_graph.py
|
fix: half-open as-of interval for KG supersession
|
2026-07-06 09:23:46 -03:00 |
|
test_knowledge_graph_extra.py
|
test: bring coverage to 85%, set threshold to 85, reset version to 3.0.11
|
2026-04-08 21:38:12 +03:00 |
|
test_known_entities_registry.py
|
feat(graph): cross-wing tunnels by shared topics (#1180)
|
2026-04-24 23:06:26 -03:00 |
|
test_layers.py
|
fix: guard None metadata/doc in tool_check_duplicate and Layer1/Layer2
|
2026-04-19 11:13:50 +03:00 |
|
test_legacy_shell_hooks.py
|
fix(hooks): normalize Windows transcript paths in shell hooks
|
2026-06-12 15:25:36 +00:00 |
|
test_line_numbers.py
|
Merge origin/develop into feat/benchmark-multilingual
|
2026-05-24 13:18:08 -03:00 |
|
test_live_pgvector_conformance.py
|
review(gemini): marker-race stub, created-list lock, exact-order + exactly-one-ran asserts
|
2026-06-10 16:46:27 -07:00 |
|
test_llm_client.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_llm_refine.py
|
feat(graph): cross-wing tunnels by shared topics (#1180)
|
2026-04-24 23:06:26 -03:00 |
|
test_maintenance_hooks.py
|
feat(backends): observable maintenance hooks + pgvector indexed-build path (RFC 001, #1725)
|
2026-06-08 08:44:20 -03:00 |
|
test_mcp_http_transport.py
|
fix(mcp): don't log a traceback when an HTTP client disconnects mid-response
|
2026-07-14 13:59:49 +05:00 |
|
test_mcp_mine.py
|
feat(mcp): add mempalace_mine tool (#1662)
|
2026-06-06 17:54:38 +05:00 |
|
test_mcp_server.py
|
style: ruff format test file
|
2026-07-10 17:04:33 +02:00 |
|
test_mcp_stdio_protection.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_migrate.py
|
test(migrate): cover swap-failure rollback
|
2026-06-15 10:40:24 -03:00 |
|
test_migrate_wings.py
|
feat(migrate): mempalace migrate-wings — normalize legacy wing names
|
2026-06-06 03:11:46 -03:00 |
|
test_milvus_backend.py
|
fix: address Milvus backend review feedback
|
2026-07-01 07:10:39 +00:00 |
|
test_mine_lock_lifecycle.py
|
fix: address mine lock review feedback
|
2026-06-14 14:58:20 -03:00 |
|
test_miner.py
|
fix: scope derived graph state to explicit palace
|
2026-07-14 19:22:06 -03:00 |
|
test_miner_fts5_validation.py
|
fix(mine): address review feedback on FTS5 auto-heal (#1928)
|
2026-07-07 13:23:59 -04:00 |
|
test_miner_jsonl_visibility.py
|
Harden sweeper for production: verbatim tool blocks, full session_id, logged failures
|
2026-04-18 13:14:32 -03:00 |
|
test_normalize.py
|
fix: green up CI for hardened file handling
|
2026-06-24 01:12:24 -03:00 |
|
test_onboarding.py
|
feat(onboarding): multilingual embedder by default for new installs
|
2026-05-14 06:40:27 -03:00 |
|
test_palace.py
|
fix(backends): require SQLite magic header for chroma + sqlite_exact detect() (#1893) (#1896)
|
2026-06-28 18:01:59 -03:00 |
|
test_palace_graph.py
|
fix(palace_graph): skip None metadata in build_graph
|
2026-04-25 11:06:32 -07:00 |
|
test_palace_graph_tunnels.py
|
fix: scope derived graph state to explicit palace
|
2026-07-14 19:22:06 -03:00 |
|
test_palace_locks.py
|
fix(palace): pair the mine_palace_lock holder-set update with its release
|
2026-07-11 15:21:41 +05:00 |
|
test_pgvector_backend.py
|
fix(pgvector): skip document column for metadata-only fetches (#1840 follow-up) (#1892)
|
2026-06-28 18:02:29 -03:00 |
|
test_project_scanner.py
|
fix: handle rootless Java subprojects
|
2026-06-07 16:01:57 +08:00 |
|
test_qdrant_backend.py
|
feat: optimize metadata counting using Qdrant server-side facets (#1868)
|
2026-06-28 19:43:28 -03:00 |
|
test_qdrant_bulk_metadata_scroll.py
|
test(mcp_server): add missing _fetch_all_metadata delegation/fallback tests.
|
2026-06-21 11:29:25 +00:00 |
|
test_query_sanitizer.py
|
fix: make quote trimming explicit
|
2026-04-12 22:19:58 -03:00 |
|
test_readme_claims.py
|
style: ruff format tests/test_hooks_cli.py with CI-pinned ruff 0.4.x
|
2026-05-23 12:05:34 -04:00 |
|
test_repair.py
|
Merge pull request #2017 from MemPalace/agent/fix-sqlite-recovery-cleanup
|
2026-07-14 20:28:27 -03:00 |
|
test_room_detector_local.py
|
fix: skip unreachable reparse points in detect_rooms_from_folders (#558)
|
2026-04-11 16:16:06 -07:00 |
|
test_save_hook_mines.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_save_hook_verbose.py
|
feat: add MEMPAL_VERBOSE toggle — developers see diaries in chat (#871)
|
2026-04-14 10:55:56 -07:00 |
|
test_searcher.py
|
fix(searcher): preserve backend diagnostics before HNSW probe
|
2026-07-14 19:37:32 -03:00 |
|
test_serve.py
|
feat(serve): turnkey secure remote MCP server (#1877) (#1900)
|
2026-06-29 03:28:06 -03:00 |
|
test_sources.py
|
chore(tests): wrap sqlite3 connections in contextlib.closing
|
2026-05-09 20:25:47 -03:00 |
|
test_spellcheck.py
|
style: format test files with ruff
|
2026-04-08 21:08:49 +03:00 |
|
test_spellcheck_extra.py
|
test: bring coverage to 85%, set threshold to 85, reset version to 3.0.11
|
2026-04-08 21:38:12 +03:00 |
|
test_split_mega_files.py
|
test: expand coverage to 70%, fix mcp_server CI crash (threshold 60%)
|
2026-04-08 21:07:03 +03:00 |
|
test_sqlite_exact_backend.py
|
fix(backends): require SQLite magic header for chroma + sqlite_exact detect() (#1893) (#1896)
|
2026-06-28 18:01:59 -03:00 |
|
test_sweeper.py
|
style: reformat tree with ruff 0.15.9
|
2026-05-17 23:20:01 -03:00 |
|
test_sync.py
|
fix(backends): require SQLite magic header for chroma + sqlite_exact detect() (#1893) (#1896)
|
2026-06-28 18:01:59 -03:00 |
|
test_version_consistency.py
|
fix: unify package and MCP version reporting
|
2026-04-07 08:53:25 +01:00 |
|
test_wal.py
|
test(wal): cover crash-safety, idempotent setup, and redaction edge paths
|
2026-06-24 22:58:08 +02:00 |