ltcai 11.1.0 → 11.4.0
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.
- package/README.md +47 -54
- package/docs/CHANGELOG.md +94 -0
- package/docs/COMMUNITY_AND_PLUGINS.md +1 -1
- package/docs/DEVELOPMENT.md +1 -1
- package/docs/FEATURE_AUDIT_v11.2.0.md +393 -0
- package/docs/LAYOUT_REBUILD_SPEC.md +9 -1
- package/docs/MULTI_AGENT_RUNTIME.md +1 -1
- package/docs/ONBOARDING.md +1 -1
- package/docs/OPERATIONS.md +6 -2
- package/docs/PERMISSION_MODE.md +1 -1
- package/docs/TRUST_MODEL.md +1 -1
- package/docs/WHY_LATTICE.md +1 -1
- package/docs/architecture.md +6 -2
- package/docs/kg-schema.md +2 -2
- package/docs/v11.3.0_PLAN.md +202 -0
- package/docs/v11.4.0_RUST_FOUNDATION_PLAN.md +176 -0
- package/lattice_brain/__init__.py +1 -1
- package/lattice_brain/gates.py +125 -0
- package/lattice_brain/graph/_kg_common/__init__.py +287 -0
- package/lattice_brain/graph/_kg_common/extraction.py +516 -0
- package/lattice_brain/graph/_kg_common/relations.py +161 -0
- package/lattice_brain/graph/_kg_common/text.py +479 -0
- package/lattice_brain/graph/discovery_index/__init__.py +35 -0
- package/lattice_brain/graph/discovery_index/cleanup.py +182 -0
- package/lattice_brain/graph/discovery_index/extract.py +137 -0
- package/lattice_brain/graph/discovery_index/scan.py +411 -0
- package/lattice_brain/graph/discovery_index/upsert.py +495 -0
- package/lattice_brain/graph/fusion.py +35 -4
- package/lattice_brain/graph/projection/__init__.py +42 -0
- package/lattice_brain/graph/projection/curation.py +500 -0
- package/lattice_brain/graph/{projection.py → projection/v2_schema.py} +81 -485
- package/lattice_brain/graph/retrieval/__init__.py +54 -0
- package/lattice_brain/graph/retrieval/context.py +197 -0
- package/lattice_brain/graph/retrieval/graph_view.py +319 -0
- package/lattice_brain/graph/retrieval/hybrid.py +488 -0
- package/lattice_brain/graph/retrieval/maintenance.py +121 -0
- package/lattice_brain/graph/retrieval/signals.py +95 -0
- package/lattice_brain/graph/retrieval_vector/__init__.py +42 -0
- package/lattice_brain/graph/retrieval_vector/fingerprint.py +97 -0
- package/lattice_brain/graph/retrieval_vector/indexing.py +347 -0
- package/lattice_brain/graph/retrieval_vector/search.py +560 -0
- package/lattice_brain/graph/retrieval_vector/status.py +374 -0
- package/lattice_brain/graph/schema.py +9 -0
- package/lattice_brain/graph/store.py +9 -0
- package/lattice_brain/graph/vector_index/selector.py +32 -2
- package/lattice_brain/ingestion/__init__.py +130 -0
- package/lattice_brain/ingestion/_contract.py +90 -0
- package/lattice_brain/ingestion/constants.py +127 -0
- package/lattice_brain/ingestion/folder_scan.py +57 -0
- package/lattice_brain/ingestion/folders.py +258 -0
- package/lattice_brain/ingestion/hashing.py +26 -0
- package/lattice_brain/ingestion/jobs_api.py +107 -0
- package/lattice_brain/ingestion/models.py +80 -0
- package/lattice_brain/ingestion/pipeline.py +486 -0
- package/lattice_brain/ingestion/quality.py +209 -0
- package/lattice_brain/ingestion/routing.py +295 -0
- package/lattice_brain/multimodal/__init__.py +164 -0
- package/lattice_brain/multimodal/audio.py +77 -0
- package/lattice_brain/multimodal/common.py +118 -0
- package/lattice_brain/{multimodal.py → multimodal/images.py} +22 -262
- package/lattice_brain/multimodal/ports.py +169 -0
- package/lattice_brain/multimodal/video.py +410 -0
- package/lattice_brain/portability/__init__.py +90 -0
- package/lattice_brain/portability/_contract.py +42 -0
- package/lattice_brain/portability/backups.py +338 -0
- package/lattice_brain/portability/bundles.py +136 -0
- package/lattice_brain/portability/constants.py +93 -0
- package/lattice_brain/portability/fsops.py +138 -0
- package/lattice_brain/portability/service.py +41 -0
- package/lattice_brain/portability/sharing.py +714 -0
- package/lattice_brain/runtime/__init__.py +1 -1
- package/lattice_brain/runtime/multi_agent.py +1 -1
- package/lattice_brain/sealed_box.py +244 -0
- package/lattice_brain/synthesis.py +24 -1
- package/latticeai/__init__.py +1 -1
- package/latticeai/api/brain_intelligence.py +4 -0
- package/latticeai/api/chat.py +11 -0
- package/latticeai/api/chat_helpers.py +16 -3
- package/latticeai/api/chat_hybrid.py +32 -1
- package/latticeai/api/chronicle.py +63 -0
- package/latticeai/api/features.py +70 -0
- package/latticeai/api/local_files.py +102 -0
- package/latticeai/api/portability.py +39 -4
- package/latticeai/api/review_queue.py +126 -0
- package/latticeai/api/search.py +16 -2
- package/latticeai/core/agent/__init__.py +93 -0
- package/latticeai/core/agent/_contract.py +79 -0
- package/latticeai/core/agent/context.py +57 -0
- package/latticeai/core/agent/deps.py +125 -0
- package/latticeai/core/agent/execution.py +622 -0
- package/latticeai/core/agent/planning.py +145 -0
- package/latticeai/core/agent/recovery.py +157 -0
- package/latticeai/core/agent/runtime.py +210 -0
- package/latticeai/core/agent/verification.py +231 -0
- package/latticeai/core/config.py +4 -1
- package/latticeai/core/context_builder.py +6 -3
- package/latticeai/core/embedding_providers/__init__.py +151 -0
- package/latticeai/core/embedding_providers/base.py +199 -0
- package/latticeai/core/embedding_providers/captions.py +162 -0
- package/latticeai/core/embedding_providers/profiles.py +126 -0
- package/latticeai/core/embedding_providers/text.py +350 -0
- package/latticeai/core/embedding_providers/vision.py +352 -0
- package/latticeai/core/file_generation/__init__.py +115 -0
- package/latticeai/core/file_generation/bundles.py +76 -0
- package/latticeai/core/file_generation/extraction.py +154 -0
- package/latticeai/core/file_generation/inference.py +235 -0
- package/latticeai/core/file_generation/orchestration.py +152 -0
- package/latticeai/core/file_generation/prompting.py +117 -0
- package/latticeai/core/file_generation/repair.py +114 -0
- package/latticeai/core/file_generation/sanitize.py +61 -0
- package/latticeai/core/file_generation/validation.py +201 -0
- package/latticeai/core/legacy_compatibility.py +1 -1
- package/latticeai/core/marketplace.py +1 -1
- package/latticeai/core/messages.py +152 -0
- package/latticeai/core/model_compat.py +73 -2
- package/latticeai/core/workspace_os_constants.py +1 -1
- package/latticeai/integrations/telegram_bot/__init__.py +123 -0
- package/latticeai/integrations/telegram_bot/__main__.py +17 -0
- package/latticeai/integrations/telegram_bot/config.py +86 -0
- package/latticeai/integrations/telegram_bot/dispatch.py +311 -0
- package/latticeai/integrations/telegram_bot/flows.py +478 -0
- package/latticeai/integrations/telegram_bot/helpers.py +322 -0
- package/latticeai/integrations/telegram_bot/screens.py +394 -0
- package/latticeai/models/model_providers.py +12 -4
- package/latticeai/models/router/__init__.py +88 -0
- package/latticeai/models/router/_contract.py +66 -0
- package/latticeai/models/router/branding.py +56 -0
- package/latticeai/models/router/catalog.py +69 -0
- package/latticeai/models/router/documents.py +199 -0
- package/latticeai/models/router/errors.py +37 -0
- package/latticeai/models/router/generation.py +258 -0
- package/latticeai/models/router/loading.py +291 -0
- package/latticeai/models/router/local_models.py +85 -0
- package/latticeai/models/router/registry.py +147 -0
- package/latticeai/runtime/build_phases/__init__.py +82 -0
- package/latticeai/runtime/build_phases/features.py +407 -0
- package/latticeai/runtime/build_phases/foundation.py +555 -0
- package/latticeai/runtime/build_phases/web.py +492 -0
- package/latticeai/runtime/chat_wiring.py +4 -0
- package/latticeai/runtime/feature_toggle_wiring.py +163 -0
- package/latticeai/runtime/router_registration.py +11 -0
- package/latticeai/runtime/runtime_context.py +1 -0
- package/latticeai/services/app_context.py +8 -0
- package/latticeai/services/architecture_readiness.py +48 -19
- package/latticeai/services/automation_intelligence.py +22 -2
- package/latticeai/services/brain_intelligence/__init__.py +58 -0
- package/latticeai/services/brain_intelligence/_contract.py +71 -0
- package/latticeai/services/brain_intelligence/consistency.py +193 -0
- package/latticeai/services/brain_intelligence/constants.py +47 -0
- package/latticeai/services/brain_intelligence/digest.py +258 -0
- package/latticeai/services/brain_intelligence/health.py +331 -0
- package/latticeai/services/brain_intelligence/proposals.py +264 -0
- package/latticeai/services/brain_intelligence/sampling.py +84 -0
- package/latticeai/services/brain_intelligence/service.py +48 -0
- package/latticeai/services/chronicle.py +557 -0
- package/latticeai/services/command_center.py +10 -4
- package/latticeai/services/feature_toggles.py +502 -0
- package/latticeai/services/folder_watch.py +122 -1
- package/latticeai/services/hybrid_chat.py +56 -5
- package/latticeai/services/interop_bridges.py +978 -0
- package/latticeai/services/memory_service/__init__.py +52 -0
- package/latticeai/services/memory_service/_contract.py +100 -0
- package/latticeai/services/memory_service/brief.py +431 -0
- package/latticeai/services/memory_service/constants.py +57 -0
- package/latticeai/services/memory_service/maintenance.py +138 -0
- package/latticeai/services/memory_service/manager.py +186 -0
- package/latticeai/services/memory_service/proof.py +136 -0
- package/latticeai/services/memory_service/recall.py +225 -0
- package/latticeai/services/memory_service/service.py +48 -0
- package/latticeai/services/memory_service/stores.py +110 -0
- package/latticeai/services/model_capability_registry.py +434 -261
- package/latticeai/services/model_catalog.py +95 -61
- package/latticeai/services/model_recommendation.py +18 -11
- package/latticeai/services/model_runtime/__init__.py +322 -0
- package/latticeai/services/model_runtime/cloud.py +87 -0
- package/latticeai/services/model_runtime/download.py +282 -0
- package/latticeai/services/model_runtime/engines.py +341 -0
- package/latticeai/services/model_runtime/loading.py +178 -0
- package/latticeai/services/model_runtime/service.py +129 -0
- package/latticeai/services/model_runtime/state.py +131 -0
- package/latticeai/services/model_runtime/status.py +255 -0
- package/latticeai/services/multimodal_ports.py +26 -1
- package/latticeai/services/obsidian_bridge.py +16 -25
- package/latticeai/services/product_readiness.py +15 -7
- package/latticeai/services/search_service.py +149 -2
- package/latticeai/services/tool_dispatch.py +4 -0
- package/latticeai/setup/auto_setup.py +27 -30
- package/latticeai/setup/wizard/__init__.py +126 -0
- package/latticeai/setup/wizard/catalog.py +172 -0
- package/latticeai/setup/wizard/detect.py +323 -0
- package/latticeai/setup/wizard/install.py +348 -0
- package/latticeai/setup/wizard/paths.py +168 -0
- package/latticeai/setup/wizard/plans.py +74 -0
- package/latticeai/setup/wizard/recommend.py +320 -0
- package/package.json +6 -2
- package/scripts/bump_version.py +14 -0
- package/scripts/capture_release_evidence.mjs +33 -21
- package/scripts/check_current_release_docs.mjs +1 -1
- package/scripts/check_i18n_namespace_coverage.mjs +41 -4
- package/scripts/check_max_file_lines.mjs +102 -0
- package/scripts/check_release_evidence_bound.mjs +30 -15
- package/scripts/check_screenshot_pixel_delta.py +34 -4
- package/scripts/check_server_i18n.mjs +2 -0
- package/scripts/generate_rust_parity_fixtures.py +562 -0
- package/scripts/lib/mock_server_fingerprint.mjs +94 -0
- package/scripts/release_screen_claims.json +44 -2
- package/scripts/verify_hf_model_registry.py +253 -218
- package/src-tauri/Cargo.lock +361 -3
- package/src-tauri/Cargo.toml +6 -1
- package/src-tauri/src/backend.rs +349 -0
- package/src-tauri/src/folder.rs +33 -0
- package/src-tauri/src/main.rs +97 -399
- package/src-tauri/tauri.conf.json +1 -1
- package/static/app/asset-manifest.json +41 -37
- package/static/app/assets/Act-yYpYnn0v.js +1 -0
- package/static/app/assets/AdminConsole-DL3Cr5pL.js +1 -0
- package/static/app/assets/{Brain-CzCsI1mi.js → Brain-C1HBN0Wf.js} +2 -2
- package/static/app/assets/BrainHome-DoXRhUUC.js +2 -0
- package/static/app/assets/BrainSignals-6yR6ir5t.js +1 -0
- package/static/app/assets/Capture-CFIRsFNE.js +1 -0
- package/static/app/assets/Chronicle-BZbEgiwN.js +1 -0
- package/static/app/assets/CommandPalette-D2pMxC2I.js +1 -0
- package/static/app/assets/Library-DwO3yZST.js +1 -0
- package/static/app/assets/{LivingBrain-BXMWIK_2.js → LivingBrain-Jn1GK0-S.js} +1 -1
- package/static/app/assets/ProductFlow-B-w1R4Oo.js +1 -0
- package/static/app/assets/ReviewCard-6B27X8Vg.js +3 -0
- package/static/app/assets/System-DW8F-2xL.js +1 -0
- package/static/app/assets/arrow-left-DXvKg9U6.js +1 -0
- package/static/app/assets/{bot-4BvN07ux.js → bot-IM_E_Y12.js} +1 -1
- package/static/app/assets/brain-Ci1CkWjM.js +1 -0
- package/static/app/assets/{button-CDjtnAoU.js → button-COwyqfHM.js} +1 -1
- package/static/app/assets/circle-check-DfInj-qD.js +1 -0
- package/static/app/assets/{circle-pause-D_RMn7tp.js → circle-pause-DEM4A1Y5.js} +1 -1
- package/static/app/assets/{circle-play-B5OpB8ae.js → circle-play-C9djDuLd.js} +1 -1
- package/static/app/assets/{cpu-BIlWInHf.js → cpu-DFdo1gw-.js} +1 -1
- package/static/app/assets/{download-BtjXfL3z.js → download-SnJL6oqk.js} +1 -1
- package/static/app/assets/{folder-open-DefMpxI2.js → folder-open-CqZeDkjE.js} +1 -1
- package/static/app/assets/{hard-drive-BQ8NZVkw.js → hard-drive-j1jJXYYf.js} +1 -1
- package/static/app/assets/{index-vtEfYvQY.css → index-BLPb5lmE.css} +1 -1
- package/static/app/assets/index-_u5iUHDr.js +10 -0
- package/static/app/assets/input-B0lPdRQZ.js +1 -0
- package/static/app/assets/link-2-CoFbooHS.js +1 -0
- package/static/app/assets/{permissionCopy-BqZ5tsgL.js → permissionCopy-BsyLxtao.js} +1 -1
- package/static/app/assets/primitives-DEbN-d6p.js +1 -0
- package/static/app/assets/search-BybIWPNd.js +1 -0
- package/static/app/assets/{share-2-D5zg_0fY.js → share-2-CVtZ_ewX.js} +1 -1
- package/static/app/assets/{shield-alert-B5pZzkUb.js → shield-alert-CBi2GNWM.js} +1 -1
- package/static/app/assets/{textarea-nEVIweKY.js → textarea-DNMpB5ih.js} +1 -1
- package/static/app/assets/{useFocusTrap-Cm99AHlz.js → useFocusTrap-C83t3GXF.js} +1 -1
- package/static/app/assets/useMutation-DtbJDoyz.js +1 -0
- package/static/app/assets/{useQuery-Dm__N6bL.js → useQuery-Dcp1OChy.js} +1 -1
- package/static/app/assets/utils-BlZr7Pd4.js +4 -0
- package/static/app/assets/workspace-jJY4RuAV.js +1 -0
- package/static/app/index.html +4 -4
- package/static/sw.js +1 -1
- package/lattice_brain/graph/_kg_common.py +0 -1331
- package/lattice_brain/graph/discovery_index.py +0 -1141
- package/lattice_brain/graph/retrieval.py +0 -1120
- package/lattice_brain/graph/retrieval_vector.py +0 -1293
- package/lattice_brain/ingestion.py +0 -1377
- package/lattice_brain/portability.py +0 -1210
- package/latticeai/core/agent.py +0 -1412
- package/latticeai/core/embedding_providers.py +0 -1196
- package/latticeai/core/file_generation.py +0 -1047
- package/latticeai/integrations/telegram_bot.py +0 -1390
- package/latticeai/models/router.py +0 -1007
- package/latticeai/runtime/build_phases.py +0 -1422
- package/latticeai/services/brain_intelligence.py +0 -967
- package/latticeai/services/memory_service.py +0 -1177
- package/latticeai/services/model_runtime.py +0 -1281
- package/latticeai/setup/wizard.py +0 -1277
- package/static/app/assets/Act-D0HWqtn0.js +0 -1
- package/static/app/assets/AdminConsole-D-QDW-A4.js +0 -1
- package/static/app/assets/BrainHome-Btns-_TA.js +0 -2
- package/static/app/assets/BrainSignals-2dHQNkns.js +0 -1
- package/static/app/assets/Capture-CT8v1StE.js +0 -1
- package/static/app/assets/CommandPalette-DoLXC2KH.js +0 -1
- package/static/app/assets/Library-DDoxFE5c.js +0 -1
- package/static/app/assets/ProductFlow-DOYf7JIs.js +0 -1
- package/static/app/assets/ReviewCard-COQsqidK.js +0 -3
- package/static/app/assets/System-BRllvYXd.js +0 -1
- package/static/app/assets/arrow-left-DnyMzss-.js +0 -1
- package/static/app/assets/brain-uMb_5hnO.js +0 -1
- package/static/app/assets/index-0AvoEBzJ.js +0 -10
- package/static/app/assets/input-B_5ZJ9oy.js +0 -1
- package/static/app/assets/primitives-CVwew78r.js +0 -1
- package/static/app/assets/search-DkhnOKZt.js +0 -1
- package/static/app/assets/utils-DcDMoZIe.js +0 -4
- package/static/app/assets/workspace-LtRRSKTf.js +0 -1
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
"""
|
|
2
|
+
SQLite knowledge graph for Lattice AI workspace memory.
|
|
3
|
+
|
|
4
|
+
The graph keeps raw event JSON, normalized node metadata, and edges in one
|
|
5
|
+
portable database so it can later migrate to Neo4j/Postgres without changing
|
|
6
|
+
the ingestion contract.
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
# ruff: noqa: F401,F841
|
|
10
|
+
|
|
11
|
+
import asyncio
|
|
12
|
+
import hashlib
|
|
13
|
+
import json
|
|
14
|
+
import logging
|
|
15
|
+
import math
|
|
16
|
+
import os
|
|
17
|
+
import platform
|
|
18
|
+
import re
|
|
19
|
+
import shutil
|
|
20
|
+
import sqlite3
|
|
21
|
+
import time
|
|
22
|
+
import zipfile
|
|
23
|
+
from collections import Counter
|
|
24
|
+
from contextlib import contextmanager
|
|
25
|
+
from datetime import datetime
|
|
26
|
+
from pathlib import Path
|
|
27
|
+
from typing import Any, Dict, Iterable, Iterator, List, Optional, Tuple
|
|
28
|
+
|
|
29
|
+
try:
|
|
30
|
+
from ..schema import EdgeType, KGStoreV2, NodeType, _exec_script
|
|
31
|
+
except Exception: # pragma: no cover - v2 schema is optional at import time
|
|
32
|
+
KGStoreV2 = None # type: ignore[assignment,misc]
|
|
33
|
+
NodeType = None # type: ignore[assignment,misc]
|
|
34
|
+
EdgeType = None # type: ignore[assignment,misc]
|
|
35
|
+
_exec_script = None # type: ignore[assignment]
|
|
36
|
+
|
|
37
|
+
from ...embeddings import LocalEmbeddingModel
|
|
38
|
+
from ..json_utils import _json, _safe_loads
|
|
39
|
+
from ..runtime import get_llm_router, set_llm_router
|
|
40
|
+
|
|
41
|
+
# Default read source for the graph queries: v2 reconstruction views.
|
|
42
|
+
# Override with LATTICEAI_KG_READ_V2=0 to fall back to the legacy tables.
|
|
43
|
+
_READ_FROM_V2_DEFAULT = os.getenv("LATTICEAI_KG_READ_V2", "1") != "0"
|
|
44
|
+
|
|
45
|
+
# Static constants (projection/format versions, local-ingestion classification
|
|
46
|
+
# tables, OS exclusion lists) live in ._kg_constants; re-exported here so every
|
|
47
|
+
# existing ``from ._kg_common import <CONST>`` site is unaffected.
|
|
48
|
+
from ...quiet import quiet
|
|
49
|
+
from .._kg_constants import ( # noqa: E402
|
|
50
|
+
_KG_DB_FORMAT_KEY,
|
|
51
|
+
_KG_DB_FORMAT_VERSION,
|
|
52
|
+
_PROJECTION_VERSION,
|
|
53
|
+
_V2_WRITE_MASTER_KEY,
|
|
54
|
+
COMMON_EXCLUDED_DIRS,
|
|
55
|
+
COMMON_EXCLUDED_FILE_NAMES,
|
|
56
|
+
COMMON_EXCLUDED_FILE_SUFFIXES,
|
|
57
|
+
GRAPH_SCHEMA_VERSION,
|
|
58
|
+
LINUX_EXCLUDED_PREFIXES,
|
|
59
|
+
LOCAL_CODE_EXTENSIONS,
|
|
60
|
+
LOCAL_DOCUMENT_EXTENSIONS,
|
|
61
|
+
LOCAL_IMAGE_EXTENSIONS,
|
|
62
|
+
LOCAL_SIZE_LIMITS,
|
|
63
|
+
LOCAL_SLIDE_EXTENSIONS,
|
|
64
|
+
LOCAL_SPREADSHEET_EXTENSIONS,
|
|
65
|
+
LOCAL_SUPPORTED_EXTENSIONS,
|
|
66
|
+
LOCAL_TEXT_EXTENSIONS,
|
|
67
|
+
MACOS_EXCLUDED_PREFIXES,
|
|
68
|
+
SENSITIVE_PATH_KEYWORDS,
|
|
69
|
+
WINDOWS_EXCLUDED_NAMES,
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
# Pure fs/path/hash/classification helpers → ._kg_fsutil, re-exported so the
|
|
73
|
+
# static __all__ below forwards them to the graph mixins. Listed explicitly
|
|
74
|
+
# rather than star-imported: a star import here made every name in this
|
|
75
|
+
# module unverifiable to both ruff and mypy.
|
|
76
|
+
from .._kg_fsutil import ( # noqa: E402,F401
|
|
77
|
+
_current_os_type,
|
|
78
|
+
_drive_id_for_path,
|
|
79
|
+
_excluded_directory_reason,
|
|
80
|
+
_file_category,
|
|
81
|
+
_is_hidden_path,
|
|
82
|
+
_is_relative_to,
|
|
83
|
+
_node_type_for_category,
|
|
84
|
+
_now,
|
|
85
|
+
_parse_iso,
|
|
86
|
+
_parser_type_for_category,
|
|
87
|
+
_path_fingerprint,
|
|
88
|
+
_path_parts_lower,
|
|
89
|
+
_recency_score,
|
|
90
|
+
_root_warning,
|
|
91
|
+
_safe_iso_from_stat_mtime,
|
|
92
|
+
_sample_file,
|
|
93
|
+
_sensitive_file_reason,
|
|
94
|
+
_sha256_bytes,
|
|
95
|
+
_sha256_text,
|
|
96
|
+
_size_limit_for_category,
|
|
97
|
+
_slug,
|
|
98
|
+
)
|
|
99
|
+
|
|
100
|
+
# The logic this module used to hold inline lives in three cohesive submodules
|
|
101
|
+
# (v11.3.0 decomposition). Every name is re-exported below, so the twelve
|
|
102
|
+
# `from ._kg_common import *` consumers are unaffected — and `__all__` is still
|
|
103
|
+
# the single written-down star-import contract.
|
|
104
|
+
from .extraction import ( # noqa: E402
|
|
105
|
+
_CONCEPT_STOP,
|
|
106
|
+
_LLM_EXTRACT_CONCEPT_PROMPT,
|
|
107
|
+
_LLM_EXTRACT_TRIPLE_PROMPT,
|
|
108
|
+
ENABLE_LLM_EXTRACTION,
|
|
109
|
+
_extract_concepts,
|
|
110
|
+
_extract_concepts_rules,
|
|
111
|
+
_extract_triples,
|
|
112
|
+
_extract_triples_rules,
|
|
113
|
+
_llm_extract_concepts,
|
|
114
|
+
_llm_extract_triples,
|
|
115
|
+
_semantic_items,
|
|
116
|
+
_topic_candidates,
|
|
117
|
+
)
|
|
118
|
+
from .relations import ( # noqa: E402
|
|
119
|
+
_NOT_PERSON_WORDS,
|
|
120
|
+
COOCCURRENCE_CONCEPT_LIMIT,
|
|
121
|
+
COOCCURRENCE_EDGE_WEIGHT,
|
|
122
|
+
EDGE_VERB,
|
|
123
|
+
VERB_EDGE_WEIGHT,
|
|
124
|
+
_classify_node_type,
|
|
125
|
+
_infer_edge,
|
|
126
|
+
infer_edge_relation,
|
|
127
|
+
)
|
|
128
|
+
from .text import ( # noqa: E402
|
|
129
|
+
_CHUNK_STRATEGIES,
|
|
130
|
+
_CODE_BLANK_RUN_RE,
|
|
131
|
+
_CODE_BOUNDARY_LINE_RE,
|
|
132
|
+
_CODE_CHUNK_EXTENSIONS,
|
|
133
|
+
_MARKDOWN_CHUNK_EXTENSIONS,
|
|
134
|
+
_MARKDOWN_HEADING_RE,
|
|
135
|
+
_MARKDOWN_MIN_SECTION_CHARS,
|
|
136
|
+
_PROSE_CHUNK_EXTENSIONS,
|
|
137
|
+
_PROSE_MIN_SPAN_RATIO,
|
|
138
|
+
_PROSE_STRONG_BOUNDARY_RE,
|
|
139
|
+
_PROSE_WEAK_BOUNDARY_RE,
|
|
140
|
+
_chunks,
|
|
141
|
+
_clean_text,
|
|
142
|
+
_code_chunks,
|
|
143
|
+
_code_segment_spans,
|
|
144
|
+
_last_boundary,
|
|
145
|
+
_markdown_chunks,
|
|
146
|
+
_markdown_section_spans,
|
|
147
|
+
_merge_small_sections,
|
|
148
|
+
_plain_windows,
|
|
149
|
+
_prose_chunks,
|
|
150
|
+
chunk_strategy_for,
|
|
151
|
+
citation_locator,
|
|
152
|
+
page_for_offset,
|
|
153
|
+
pdf_page_offsets,
|
|
154
|
+
typed_chunk_meta_fields,
|
|
155
|
+
typed_chunks,
|
|
156
|
+
)
|
|
157
|
+
|
|
158
|
+
# Static export list. This used to be `[name for name in globals() if not
|
|
159
|
+
# name.startswith("__")]`, which is invisible to a type checker: every
|
|
160
|
+
# `from ._kg_common import *` consumer then had *no* resolvable names, and
|
|
161
|
+
# mypy reported ~750 spurious `name-defined` errors across the graph
|
|
162
|
+
# package. `tests/unit/test_kg_common_exports.py` asserts this list still
|
|
163
|
+
# equals what the computed expression would produce, so it cannot drift.
|
|
164
|
+
__all__ = [
|
|
165
|
+
"Any",
|
|
166
|
+
"COMMON_EXCLUDED_DIRS",
|
|
167
|
+
"COMMON_EXCLUDED_FILE_NAMES",
|
|
168
|
+
"COMMON_EXCLUDED_FILE_SUFFIXES",
|
|
169
|
+
"COOCCURRENCE_CONCEPT_LIMIT",
|
|
170
|
+
"COOCCURRENCE_EDGE_WEIGHT",
|
|
171
|
+
"Counter",
|
|
172
|
+
"Dict",
|
|
173
|
+
"EDGE_VERB",
|
|
174
|
+
"ENABLE_LLM_EXTRACTION",
|
|
175
|
+
"EdgeType",
|
|
176
|
+
"GRAPH_SCHEMA_VERSION",
|
|
177
|
+
"Iterable",
|
|
178
|
+
"Iterator",
|
|
179
|
+
"KGStoreV2",
|
|
180
|
+
"LINUX_EXCLUDED_PREFIXES",
|
|
181
|
+
"LOCAL_CODE_EXTENSIONS",
|
|
182
|
+
"LOCAL_DOCUMENT_EXTENSIONS",
|
|
183
|
+
"LOCAL_IMAGE_EXTENSIONS",
|
|
184
|
+
"LOCAL_SIZE_LIMITS",
|
|
185
|
+
"LOCAL_SLIDE_EXTENSIONS",
|
|
186
|
+
"LOCAL_SPREADSHEET_EXTENSIONS",
|
|
187
|
+
"LOCAL_SUPPORTED_EXTENSIONS",
|
|
188
|
+
"LOCAL_TEXT_EXTENSIONS",
|
|
189
|
+
"List",
|
|
190
|
+
"LocalEmbeddingModel",
|
|
191
|
+
"MACOS_EXCLUDED_PREFIXES",
|
|
192
|
+
"NodeType",
|
|
193
|
+
"Optional",
|
|
194
|
+
"Path",
|
|
195
|
+
"SENSITIVE_PATH_KEYWORDS",
|
|
196
|
+
"Tuple",
|
|
197
|
+
"VERB_EDGE_WEIGHT",
|
|
198
|
+
"WINDOWS_EXCLUDED_NAMES",
|
|
199
|
+
"_CHUNK_STRATEGIES",
|
|
200
|
+
"_CODE_BLANK_RUN_RE",
|
|
201
|
+
"_CODE_BOUNDARY_LINE_RE",
|
|
202
|
+
"_CODE_CHUNK_EXTENSIONS",
|
|
203
|
+
"_CONCEPT_STOP",
|
|
204
|
+
"_KG_DB_FORMAT_KEY",
|
|
205
|
+
"_KG_DB_FORMAT_VERSION",
|
|
206
|
+
"_LLM_EXTRACT_CONCEPT_PROMPT",
|
|
207
|
+
"_LLM_EXTRACT_TRIPLE_PROMPT",
|
|
208
|
+
"_MARKDOWN_CHUNK_EXTENSIONS",
|
|
209
|
+
"_MARKDOWN_HEADING_RE",
|
|
210
|
+
"_MARKDOWN_MIN_SECTION_CHARS",
|
|
211
|
+
"_NOT_PERSON_WORDS",
|
|
212
|
+
"_PROJECTION_VERSION",
|
|
213
|
+
"_PROSE_CHUNK_EXTENSIONS",
|
|
214
|
+
"_PROSE_MIN_SPAN_RATIO",
|
|
215
|
+
"_PROSE_STRONG_BOUNDARY_RE",
|
|
216
|
+
"_PROSE_WEAK_BOUNDARY_RE",
|
|
217
|
+
"_READ_FROM_V2_DEFAULT",
|
|
218
|
+
"_V2_WRITE_MASTER_KEY",
|
|
219
|
+
"_chunks",
|
|
220
|
+
"_classify_node_type",
|
|
221
|
+
"_clean_text",
|
|
222
|
+
"_code_chunks",
|
|
223
|
+
"_code_segment_spans",
|
|
224
|
+
"_current_os_type",
|
|
225
|
+
"_drive_id_for_path",
|
|
226
|
+
"_excluded_directory_reason",
|
|
227
|
+
"_exec_script",
|
|
228
|
+
"_extract_concepts",
|
|
229
|
+
"_extract_concepts_rules",
|
|
230
|
+
"_extract_triples",
|
|
231
|
+
"_extract_triples_rules",
|
|
232
|
+
"_file_category",
|
|
233
|
+
"_infer_edge",
|
|
234
|
+
"_is_hidden_path",
|
|
235
|
+
"_is_relative_to",
|
|
236
|
+
"_json",
|
|
237
|
+
"_last_boundary",
|
|
238
|
+
"_llm_extract_concepts",
|
|
239
|
+
"_llm_extract_triples",
|
|
240
|
+
"_markdown_chunks",
|
|
241
|
+
"_markdown_section_spans",
|
|
242
|
+
"_merge_small_sections",
|
|
243
|
+
"_node_type_for_category",
|
|
244
|
+
"_now",
|
|
245
|
+
"_parse_iso",
|
|
246
|
+
"_parser_type_for_category",
|
|
247
|
+
"_path_fingerprint",
|
|
248
|
+
"_path_parts_lower",
|
|
249
|
+
"_plain_windows",
|
|
250
|
+
"_prose_chunks",
|
|
251
|
+
"_recency_score",
|
|
252
|
+
"_root_warning",
|
|
253
|
+
"_safe_iso_from_stat_mtime",
|
|
254
|
+
"_safe_loads",
|
|
255
|
+
"_sample_file",
|
|
256
|
+
"_semantic_items",
|
|
257
|
+
"_sensitive_file_reason",
|
|
258
|
+
"_sha256_bytes",
|
|
259
|
+
"_sha256_text",
|
|
260
|
+
"_size_limit_for_category",
|
|
261
|
+
"_slug",
|
|
262
|
+
"_topic_candidates",
|
|
263
|
+
"asyncio",
|
|
264
|
+
"chunk_strategy_for",
|
|
265
|
+
"citation_locator",
|
|
266
|
+
"contextmanager",
|
|
267
|
+
"datetime",
|
|
268
|
+
"get_llm_router",
|
|
269
|
+
"hashlib",
|
|
270
|
+
"infer_edge_relation",
|
|
271
|
+
"json",
|
|
272
|
+
"logging",
|
|
273
|
+
"math",
|
|
274
|
+
"os",
|
|
275
|
+
"page_for_offset",
|
|
276
|
+
"pdf_page_offsets",
|
|
277
|
+
"platform",
|
|
278
|
+
"quiet",
|
|
279
|
+
"re",
|
|
280
|
+
"set_llm_router",
|
|
281
|
+
"shutil",
|
|
282
|
+
"sqlite3",
|
|
283
|
+
"time",
|
|
284
|
+
"typed_chunk_meta_fields",
|
|
285
|
+
"typed_chunks",
|
|
286
|
+
"zipfile",
|
|
287
|
+
]
|