doc-store-client-dev 0.1.185__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 (25) hide show
  1. doc_store_client_dev-0.1.185/PKG-INFO +133 -0
  2. doc_store_client_dev-0.1.185/README.md +103 -0
  3. doc_store_client_dev-0.1.185/pyproject.toml +71 -0
  4. doc_store_client_dev-0.1.185/setup.cfg +4 -0
  5. doc_store_client_dev-0.1.185/src/doc_store_client/__init__.py +194 -0
  6. doc_store_client_dev-0.1.185/src/doc_store_client/cli.py +192 -0
  7. doc_store_client_dev-0.1.185/src/doc_store_client/client.py +1509 -0
  8. doc_store_client_dev-0.1.185/src/doc_store_client/models.py +1635 -0
  9. doc_store_client_dev-0.1.185/src/doc_store_client/owned_document_cleanup.py +143 -0
  10. doc_store_client_dev-0.1.185/src/doc_store_client/py.typed +0 -0
  11. doc_store_client_dev-0.1.185/src/doc_store_client/text_verification.py +21 -0
  12. doc_store_client_dev-0.1.185/src/doc_store_client_cli.py +16 -0
  13. doc_store_client_dev-0.1.185/src/doc_store_client_dev.egg-info/PKG-INFO +133 -0
  14. doc_store_client_dev-0.1.185/src/doc_store_client_dev.egg-info/SOURCES.txt +23 -0
  15. doc_store_client_dev-0.1.185/src/doc_store_client_dev.egg-info/dependency_links.txt +1 -0
  16. doc_store_client_dev-0.1.185/src/doc_store_client_dev.egg-info/entry_points.txt +2 -0
  17. doc_store_client_dev-0.1.185/src/doc_store_client_dev.egg-info/requires.txt +12 -0
  18. doc_store_client_dev-0.1.185/src/doc_store_client_dev.egg-info/top_level.txt +2 -0
  19. doc_store_client_dev-0.1.185/tests/test_cli_lock_errors.py +68 -0
  20. doc_store_client_dev-0.1.185/tests/test_client_operations.py +1451 -0
  21. doc_store_client_dev-0.1.185/tests/test_distribution.py +204 -0
  22. doc_store_client_dev-0.1.185/tests/test_lock_errors.py +183 -0
  23. doc_store_client_dev-0.1.185/tests/test_lock_errors_gated_methods.py +153 -0
  24. doc_store_client_dev-0.1.185/tests/test_not_found_error.py +58 -0
  25. doc_store_client_dev-0.1.185/tests/test_owned_document_cleanup.py +304 -0
@@ -0,0 +1,133 @@
1
+ Metadata-Version: 2.4
2
+ Name: doc-store-client-dev
3
+ Version: 0.1.185
4
+ Summary: Client library for the doc-store documentation service.
5
+ Author: Vasiliy Zdanovskiy
6
+ License-Expression: MIT
7
+ Keywords: documentation,client,search,json-rpc
8
+ Classifier: Development Status :: 3 - Alpha
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Operating System :: OS Independent
11
+ Classifier: Programming Language :: Python :: 3
12
+ Classifier: Programming Language :: Python :: 3.11
13
+ Classifier: Programming Language :: Python :: 3.12
14
+ Classifier: Programming Language :: Python :: 3.13
15
+ Classifier: Programming Language :: Python :: 3.14
16
+ Classifier: Topic :: Documentation
17
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
18
+ Requires-Python: >=3.11
19
+ Description-Content-Type: text/markdown
20
+ Requires-Dist: chunk-metadata-adapter>=3.5.1
21
+ Requires-Dist: mcp-proxy-adapter>=8.11.11
22
+ Provides-Extra: test
23
+ Requires-Dist: pytest<10,>=9.2.0; extra == "test"
24
+ Requires-Dist: pytest-asyncio<2,>=1.4.1.post1; extra == "test"
25
+ Provides-Extra: dev
26
+ Requires-Dist: doc-store-client-dev[test]; extra == "dev"
27
+ Requires-Dist: ruff>=0.17.4; extra == "dev"
28
+ Requires-Dist: mypy>=2.4.1; extra == "dev"
29
+ Requires-Dist: build<2,>=1.6.1; extra == "dev"
30
+
31
+ # doc-store-client backup methods
32
+
33
+ `DocStoreClient` exposes typed wrappers for the six backup commands supported by the server:
34
+
35
+ | Method | Required arguments | Result type |
36
+ | --- | --- | --- |
37
+ | `backup_run` | None | `BackupRunResult` |
38
+ | `backup_status` | None | `BackupStatusResult` |
39
+ | `backup_points` | None | `BackupPointsResult` |
40
+ | `backup_inspect` | `point` | `BackupInspectResult` |
41
+ | `backup_restore` | `point` | `BackupRestoreResult` |
42
+ | `backup_recover_catalog` | `destination`, `catalog_copy` | `BackupRecoverCatalogResult` |
43
+
44
+ All six methods accept the optional `catalog_directory`. `backup_run` and `backup_restore` also
45
+ accept `dry_run`; `backup_restore` accepts `replace`; `backup_recover_catalog` accepts `dry_run`.
46
+ Omitted options remain absent from the command payload, allowing server configuration and command
47
+ defaults to apply. Passing `catalog_directory=None` explicitly sends JSON null, which the server
48
+ defines as unspecified. Boolean defaults are false on the server.
49
+
50
+ The methods return the command's `data` object using the corresponding public `TypedDict` result
51
+ type. In particular, `backup_points` includes committed points only, `backup_inspect` describes
52
+ the requested saved point and its chain, and `backup_recover_catalog` reports `activated=False`:
53
+ catalog recovery creates a separate catalog and never switches the active catalog.
54
+
55
+ Queued commands (`backup_run`, `backup_restore`, and `backup_recover_catalog`) use the injected
56
+ adapter's normal delivery and final-result handling. The client does not submit a second command
57
+ or poll the queue a second time. Synchronous commands (`backup_status`, `backup_points`, and
58
+ `backup_inspect`) return their result directly.
59
+
60
+ Server parameter and backup-domain errors are surfaced through the adapter response. When an
61
+ error response is represented by the standard client envelope, `DocStoreClientError.error`
62
+ contains a `ServerError` with its code, message, and details. Adapter transport exceptions
63
+ continue to propagate from the adapter. The wrappers do not convert failures into success-shaped
64
+ results.
65
+
66
+ Use `DocStoreClient.call(command, params)` when a caller needs to exercise invalid parameters or
67
+ send a command that has no typed wrapper. The typed methods describe the valid command inputs;
68
+ the server remains responsible for validating values and path relationships.
69
+
70
+ ## Write sessions and lock errors
71
+
72
+ The 18 raw methods `document_create`, `document_update`, `document_delete`, `document_rebind`,
73
+ `document_chunk`, `chunk_version_add`, `chunk_version_update`, `chunk_version_set_current`,
74
+ `chunk_version_restore`, `chunk_version_retire`, `chunk_version_delete`,
75
+ `semantic_chunk_metadata_update`, `entity_create`, `entity_update`, `entity_rebind_owner`,
76
+ `entity_soft_delete`, `entity_undelete` and `entity_hard_delete`, and the 15 typed wrappers
77
+ `create_document`, `update_document`, `delete_document`, `rebind_document`, `chunk_document`,
78
+ `add_chunk_version`, `update_chunk_version`, `set_current_chunk_version`,
79
+ `restore_chunk_version`, `retire_chunk_version`, `delete_chunk_version`, `soft_delete_entities`,
80
+ `undelete_entities`, `hard_delete_entities` and `update_semantic_chunk_metadata`, take a
81
+ keyword-only `session_id` with default `None`. `None` is not sent; any other value is sent
82
+ unchanged. The client does not check the format; the server refuses a malformed value with
83
+ -32602, raised by the adapter. A raw method given `session_id` as a keyword and inside `params`
84
+ raises `ValueError` (`duplicate parameters: session_id`).
85
+
86
+ `DocStoreClient` keeps no session, so pass `session_id` on every call, and repeat a CAS write-back
87
+ with the same `session_id`. `DocStoreClient.call` passes a `session_id` inside `params` unchanged,
88
+ the CLI takes `session_id` inside the `--params` JSON object (there is no extra flag), and
89
+ `OwnedDocumentCleanup.cleanup` and `cleanup_all` take `session_id` and pass it to every
90
+ `document_delete`. `cleanup_all` collects failures into one `OwnedDocumentCleanupError`; call
91
+ `cleanup` per document to catch a typed lock error.
92
+
93
+ `document_export` and every other non-gated method take no `session_id`; a `session_id` sent to
94
+ them through `params` is refused by the server with -32602.
95
+
96
+ A refused write raises one of three errors, all subclasses of `DocStoreClientError` and importable
97
+ from `doc_store_client`:
98
+
99
+ | class | code | properties |
100
+ | --- | --- | --- |
101
+ | `FileAlreadyLockedError` | `FILE_ALREADY_LOCKED` | `document_id`, `holder_session_id`, `holder_idle_seconds`, `seconds_left_before_timeout` |
102
+ | `SessionNotFoundError` | `SESSION_NOT_FOUND` | `session_id` |
103
+ | `LockServiceUnavailableError` | `LOCK_SERVICE_UNAVAILABLE` | `reason` |
104
+
105
+ `error.code` and the message are kept. A missing field reads as `None`. Values come from the
106
+ `data` mapping in `error.details`, else from `error.details`. A refused write changes nothing on
107
+ the server. A failed queued `document_create` or `document_update` job with a lock code raises the
108
+ typed error as well.
109
+
110
+ The client never retries a refused write. React to each error yourself:
111
+
112
+ - `FileAlreadyLockedError`: another session holds the document. Do not retry blindly; use
113
+ `holder_idle_seconds` and `seconds_left_before_timeout` to decide when to try again.
114
+ - `SessionNotFoundError`: the session is unknown or expired. Open a new CAS session and repeat the
115
+ call with its id.
116
+ - `LockServiceUnavailableError`: CAS did not answer or answered with an error, and the write was
117
+ refused. Retry later by your own decision; `reason` says why.
118
+
119
+ ## Missing target
120
+
121
+ A command whose target does not exist (a document, chapter, paragraph, chunk, entity) is answered
122
+ by the server with a structured error whose code is `NOT_FOUND` and whose message contains the
123
+ missing id. The client raises `DocStoreNotFoundError`, a subclass of `DocStoreClientError`
124
+ importable from `doc_store_client`:
125
+
126
+ | class | code | properties |
127
+ | --- | --- | --- |
128
+ | `DocStoreNotFoundError` | `NOT_FOUND` | `code`, `missing_id` |
129
+
130
+ `str(error)` is the server message (it contains the id), so callers that read the text keep
131
+ working; `error.error.code` is `NOT_FOUND`. `missing_id` is read from the error data, else from the
132
+ id in the message, else `None`. `entity_content_get` does not raise: it reports an absent id as an
133
+ item with `error.code` `NOT_FOUND`.
@@ -0,0 +1,103 @@
1
+ # doc-store-client backup methods
2
+
3
+ `DocStoreClient` exposes typed wrappers for the six backup commands supported by the server:
4
+
5
+ | Method | Required arguments | Result type |
6
+ | --- | --- | --- |
7
+ | `backup_run` | None | `BackupRunResult` |
8
+ | `backup_status` | None | `BackupStatusResult` |
9
+ | `backup_points` | None | `BackupPointsResult` |
10
+ | `backup_inspect` | `point` | `BackupInspectResult` |
11
+ | `backup_restore` | `point` | `BackupRestoreResult` |
12
+ | `backup_recover_catalog` | `destination`, `catalog_copy` | `BackupRecoverCatalogResult` |
13
+
14
+ All six methods accept the optional `catalog_directory`. `backup_run` and `backup_restore` also
15
+ accept `dry_run`; `backup_restore` accepts `replace`; `backup_recover_catalog` accepts `dry_run`.
16
+ Omitted options remain absent from the command payload, allowing server configuration and command
17
+ defaults to apply. Passing `catalog_directory=None` explicitly sends JSON null, which the server
18
+ defines as unspecified. Boolean defaults are false on the server.
19
+
20
+ The methods return the command's `data` object using the corresponding public `TypedDict` result
21
+ type. In particular, `backup_points` includes committed points only, `backup_inspect` describes
22
+ the requested saved point and its chain, and `backup_recover_catalog` reports `activated=False`:
23
+ catalog recovery creates a separate catalog and never switches the active catalog.
24
+
25
+ Queued commands (`backup_run`, `backup_restore`, and `backup_recover_catalog`) use the injected
26
+ adapter's normal delivery and final-result handling. The client does not submit a second command
27
+ or poll the queue a second time. Synchronous commands (`backup_status`, `backup_points`, and
28
+ `backup_inspect`) return their result directly.
29
+
30
+ Server parameter and backup-domain errors are surfaced through the adapter response. When an
31
+ error response is represented by the standard client envelope, `DocStoreClientError.error`
32
+ contains a `ServerError` with its code, message, and details. Adapter transport exceptions
33
+ continue to propagate from the adapter. The wrappers do not convert failures into success-shaped
34
+ results.
35
+
36
+ Use `DocStoreClient.call(command, params)` when a caller needs to exercise invalid parameters or
37
+ send a command that has no typed wrapper. The typed methods describe the valid command inputs;
38
+ the server remains responsible for validating values and path relationships.
39
+
40
+ ## Write sessions and lock errors
41
+
42
+ The 18 raw methods `document_create`, `document_update`, `document_delete`, `document_rebind`,
43
+ `document_chunk`, `chunk_version_add`, `chunk_version_update`, `chunk_version_set_current`,
44
+ `chunk_version_restore`, `chunk_version_retire`, `chunk_version_delete`,
45
+ `semantic_chunk_metadata_update`, `entity_create`, `entity_update`, `entity_rebind_owner`,
46
+ `entity_soft_delete`, `entity_undelete` and `entity_hard_delete`, and the 15 typed wrappers
47
+ `create_document`, `update_document`, `delete_document`, `rebind_document`, `chunk_document`,
48
+ `add_chunk_version`, `update_chunk_version`, `set_current_chunk_version`,
49
+ `restore_chunk_version`, `retire_chunk_version`, `delete_chunk_version`, `soft_delete_entities`,
50
+ `undelete_entities`, `hard_delete_entities` and `update_semantic_chunk_metadata`, take a
51
+ keyword-only `session_id` with default `None`. `None` is not sent; any other value is sent
52
+ unchanged. The client does not check the format; the server refuses a malformed value with
53
+ -32602, raised by the adapter. A raw method given `session_id` as a keyword and inside `params`
54
+ raises `ValueError` (`duplicate parameters: session_id`).
55
+
56
+ `DocStoreClient` keeps no session, so pass `session_id` on every call, and repeat a CAS write-back
57
+ with the same `session_id`. `DocStoreClient.call` passes a `session_id` inside `params` unchanged,
58
+ the CLI takes `session_id` inside the `--params` JSON object (there is no extra flag), and
59
+ `OwnedDocumentCleanup.cleanup` and `cleanup_all` take `session_id` and pass it to every
60
+ `document_delete`. `cleanup_all` collects failures into one `OwnedDocumentCleanupError`; call
61
+ `cleanup` per document to catch a typed lock error.
62
+
63
+ `document_export` and every other non-gated method take no `session_id`; a `session_id` sent to
64
+ them through `params` is refused by the server with -32602.
65
+
66
+ A refused write raises one of three errors, all subclasses of `DocStoreClientError` and importable
67
+ from `doc_store_client`:
68
+
69
+ | class | code | properties |
70
+ | --- | --- | --- |
71
+ | `FileAlreadyLockedError` | `FILE_ALREADY_LOCKED` | `document_id`, `holder_session_id`, `holder_idle_seconds`, `seconds_left_before_timeout` |
72
+ | `SessionNotFoundError` | `SESSION_NOT_FOUND` | `session_id` |
73
+ | `LockServiceUnavailableError` | `LOCK_SERVICE_UNAVAILABLE` | `reason` |
74
+
75
+ `error.code` and the message are kept. A missing field reads as `None`. Values come from the
76
+ `data` mapping in `error.details`, else from `error.details`. A refused write changes nothing on
77
+ the server. A failed queued `document_create` or `document_update` job with a lock code raises the
78
+ typed error as well.
79
+
80
+ The client never retries a refused write. React to each error yourself:
81
+
82
+ - `FileAlreadyLockedError`: another session holds the document. Do not retry blindly; use
83
+ `holder_idle_seconds` and `seconds_left_before_timeout` to decide when to try again.
84
+ - `SessionNotFoundError`: the session is unknown or expired. Open a new CAS session and repeat the
85
+ call with its id.
86
+ - `LockServiceUnavailableError`: CAS did not answer or answered with an error, and the write was
87
+ refused. Retry later by your own decision; `reason` says why.
88
+
89
+ ## Missing target
90
+
91
+ A command whose target does not exist (a document, chapter, paragraph, chunk, entity) is answered
92
+ by the server with a structured error whose code is `NOT_FOUND` and whose message contains the
93
+ missing id. The client raises `DocStoreNotFoundError`, a subclass of `DocStoreClientError`
94
+ importable from `doc_store_client`:
95
+
96
+ | class | code | properties |
97
+ | --- | --- | --- |
98
+ | `DocStoreNotFoundError` | `NOT_FOUND` | `code`, `missing_id` |
99
+
100
+ `str(error)` is the server message (it contains the id), so callers that read the text keep
101
+ working; `error.error.code` is `NOT_FOUND`. `missing_id` is read from the error data, else from the
102
+ id in the message, else `None`. `entity_content_get` does not raise: it reports an absent id as an
103
+ item with `error.code` `NOT_FOUND`.
@@ -0,0 +1,71 @@
1
+ [build-system]
2
+ requires = ["setuptools>=84.2.1", "wheel>=0.48.0"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "doc-store-client-dev"
7
+ version = "0.1.185"
8
+ description = "Client library for the doc-store documentation service."
9
+ readme = "README.md"
10
+ requires-python = ">=3.11"
11
+ authors = [{ name = "Vasiliy Zdanovskiy" }]
12
+ license = "MIT"
13
+ keywords = ["documentation", "client", "search", "json-rpc"]
14
+ classifiers = [
15
+ "Development Status :: 3 - Alpha",
16
+ "Intended Audience :: Developers",
17
+ "Operating System :: OS Independent",
18
+ "Programming Language :: Python :: 3",
19
+ "Programming Language :: Python :: 3.11",
20
+ "Programming Language :: Python :: 3.12",
21
+ "Programming Language :: Python :: 3.13",
22
+ "Programming Language :: Python :: 3.14",
23
+ "Topic :: Documentation",
24
+ "Topic :: Software Development :: Libraries :: Python Modules",
25
+ ]
26
+ dependencies = [
27
+ "chunk-metadata-adapter>=3.5.1",
28
+ "mcp-proxy-adapter>=8.11.11",
29
+ ]
30
+
31
+ [project.scripts]
32
+ doc-store-client = "doc_store_client_cli:main"
33
+
34
+ [project.optional-dependencies]
35
+ test = [
36
+ "pytest>=9.2.0,<10",
37
+ "pytest-asyncio>=1.4.1.post1,<2",
38
+ ]
39
+ dev = [
40
+ "doc-store-client-dev[test]",
41
+ "ruff>=0.17.4",
42
+ "mypy>=2.4.1",
43
+ "build>=1.6.1,<2",
44
+ ]
45
+
46
+ [tool.setuptools]
47
+ include-package-data = true
48
+ py-modules = ["doc_store_client_cli"]
49
+
50
+ [tool.setuptools.packages.find]
51
+ where = ["src"]
52
+ include = ["doc_store_client*"]
53
+ exclude = ["tests*", "test_environment*", "logs*"]
54
+
55
+ [tool.setuptools.package-data]
56
+ doc_store_client = ["py.typed"]
57
+
58
+ [tool.pytest.ini_options]
59
+ testpaths = ["tests"]
60
+
61
+ [tool.ruff]
62
+ line-length = 100
63
+ src = ["src", "tests"]
64
+
65
+ [tool.mypy]
66
+ python_version = "3.11"
67
+ packages = ["doc_store_client"]
68
+
69
+ [[tool.mypy.overrides]]
70
+ module = ["chunk_metadata_adapter"]
71
+ ignore_missing_imports = true
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,194 @@
1
+ """Public API for the transport-neutral doc-store client package."""
2
+
3
+ from importlib.metadata import PackageNotFoundError as _PackageNotFoundError
4
+ from importlib.metadata import version as _distribution_version
5
+ from pathlib import Path as _Path
6
+ import tomllib as _tomllib
7
+
8
+ from .client import (
9
+ DOC_STORE_COMMANDS,
10
+ DocStoreClient,
11
+ DocStoreClientError,
12
+ DocStoreNotFoundError,
13
+ FileAlreadyLockedError,
14
+ LockServiceUnavailableError,
15
+ SessionNotFoundError,
16
+ )
17
+ from .owned_document_cleanup import OwnedDocumentCleanup, OwnedDocumentCleanupError
18
+ from .text_verification import text_verification_phrase
19
+ from .models import (
20
+ BackupEmergencyResult,
21
+ BackupInspectFile,
22
+ BackupInspectResult,
23
+ BackupPoint,
24
+ BackupPointsResult,
25
+ BackupRecoverCatalogResult,
26
+ BackupRestoreResult,
27
+ BackupRunResult,
28
+ BackupStatusResult,
29
+ ChapterGetRequest,
30
+ ChapterGetResult,
31
+ ChapterTextGetRequest,
32
+ ChunkHistoryRequest,
33
+ ChunkHistoryResult,
34
+ ChunkVersionAddRequest,
35
+ ChunkVersionAddResult,
36
+ ChunkVersionDeleteRequest,
37
+ ChunkVersionDeleteResult,
38
+ ChunkVersionDiffRequest,
39
+ ChunkVersionDiffResult,
40
+ ChunkVersionGetRequest,
41
+ ChunkVersionGetResult,
42
+ ChunkVersionItem,
43
+ ChunkVersionListRequest,
44
+ ChunkVersionListResult,
45
+ ChunkVersionRestoreRequest,
46
+ ChunkVersionRestoreResult,
47
+ ChunkVersionRetireRequest,
48
+ ChunkVersionRetireResult,
49
+ ChunkVersionSetCurrentRequest,
50
+ ChunkVersionSetCurrentResult,
51
+ ChunkVersionTextMutationRequest,
52
+ ChunkVersionUpdateRequest,
53
+ ChunkVersionUpdateResult,
54
+ DocumentChunkRequest,
55
+ DocumentChunkResult,
56
+ DocumentCreateRequest,
57
+ DocumentCreateResult,
58
+ DocumentDeleteRequest,
59
+ DocumentDeleteResult,
60
+ DocumentGetRequest,
61
+ DocumentGetResult,
62
+ DocumentRebindRequest,
63
+ DocumentRebindResult,
64
+ DocumentUpdateRequest,
65
+ DocumentUpdateResult,
66
+ DocumentWriteRequest,
67
+ DocumentWriteResult,
68
+ EntityGetRequest,
69
+ EntityGetResult,
70
+ EntityTextGetRequest,
71
+ EntityTextGetResult,
72
+ EntityIdsRequest,
73
+ EntityLifecycleResult,
74
+ EntityListRequest,
75
+ EntityListResult,
76
+ EntityOwnerTreeRequest,
77
+ EntityOwnerTreeResult,
78
+ EntityReferencesRequest,
79
+ EntityReferencesResult,
80
+ OperationState,
81
+ ParagraphGetByNumberRequest,
82
+ ParagraphGetByNumberResult,
83
+ ParagraphGetRequest,
84
+ ParagraphGetResult,
85
+ ProcessingStatusRequest,
86
+ ProcessingStatusResult,
87
+ RankedSearchHit,
88
+ RetrievalRequest,
89
+ RetrievalResult,
90
+ SearchResult,
91
+ ServerError,
92
+ SemanticChunkMetadataUpdateRequest,
93
+ SemanticChunkMetadataUpdateResult,
94
+ SourceFileReconstructRequest,
95
+ TextReconstructionRequest,
96
+ TextReconstructionResult,
97
+ )
98
+
99
+ try:
100
+ __version__ = _distribution_version("doc-store-client")
101
+ except _PackageNotFoundError:
102
+ _pyproject = _Path(__file__).resolve().parents[2] / "pyproject.toml"
103
+ __version__ = _tomllib.loads(_pyproject.read_text(encoding="utf-8"))["project"]["version"]
104
+
105
+ # The package includes ``py.typed`` in its distribution metadata.
106
+ __all__ = [
107
+ "BackupEmergencyResult",
108
+ "BackupInspectFile",
109
+ "BackupInspectResult",
110
+ "BackupPoint",
111
+ "BackupPointsResult",
112
+ "BackupRecoverCatalogResult",
113
+ "BackupRestoreResult",
114
+ "BackupRunResult",
115
+ "BackupStatusResult",
116
+ "ChapterGetRequest",
117
+ "ChapterGetResult",
118
+ "ChapterTextGetRequest",
119
+ "ChunkHistoryRequest",
120
+ "ChunkHistoryResult",
121
+ "ChunkVersionAddRequest",
122
+ "ChunkVersionAddResult",
123
+ "ChunkVersionDeleteRequest",
124
+ "ChunkVersionDeleteResult",
125
+ "ChunkVersionDiffRequest",
126
+ "ChunkVersionDiffResult",
127
+ "ChunkVersionGetRequest",
128
+ "ChunkVersionGetResult",
129
+ "ChunkVersionItem",
130
+ "ChunkVersionListRequest",
131
+ "ChunkVersionListResult",
132
+ "ChunkVersionRestoreRequest",
133
+ "ChunkVersionRestoreResult",
134
+ "ChunkVersionRetireRequest",
135
+ "ChunkVersionRetireResult",
136
+ "ChunkVersionSetCurrentRequest",
137
+ "ChunkVersionSetCurrentResult",
138
+ "ChunkVersionTextMutationRequest",
139
+ "ChunkVersionUpdateRequest",
140
+ "ChunkVersionUpdateResult",
141
+ "DOC_STORE_COMMANDS",
142
+ "DocStoreClient",
143
+ "DocStoreClientError",
144
+ "DocStoreNotFoundError",
145
+ "FileAlreadyLockedError",
146
+ "LockServiceUnavailableError",
147
+ "SessionNotFoundError",
148
+ "OwnedDocumentCleanup",
149
+ "OwnedDocumentCleanupError",
150
+ "DocumentCreateRequest",
151
+ "DocumentCreateResult",
152
+ "DocumentChunkRequest",
153
+ "DocumentChunkResult",
154
+ "DocumentDeleteRequest",
155
+ "DocumentDeleteResult",
156
+ "DocumentGetRequest",
157
+ "DocumentGetResult",
158
+ "DocumentRebindRequest",
159
+ "DocumentRebindResult",
160
+ "DocumentUpdateRequest",
161
+ "DocumentUpdateResult",
162
+ "DocumentWriteRequest",
163
+ "DocumentWriteResult",
164
+ "EntityGetRequest",
165
+ "EntityGetResult",
166
+ "EntityTextGetRequest",
167
+ "EntityTextGetResult",
168
+ "EntityIdsRequest",
169
+ "EntityLifecycleResult",
170
+ "EntityListRequest",
171
+ "EntityListResult",
172
+ "EntityOwnerTreeRequest",
173
+ "EntityOwnerTreeResult",
174
+ "EntityReferencesRequest",
175
+ "EntityReferencesResult",
176
+ "OperationState",
177
+ "ParagraphGetByNumberRequest",
178
+ "ParagraphGetByNumberResult",
179
+ "ParagraphGetRequest",
180
+ "ParagraphGetResult",
181
+ "ProcessingStatusRequest",
182
+ "ProcessingStatusResult",
183
+ "RankedSearchHit",
184
+ "RetrievalRequest",
185
+ "RetrievalResult",
186
+ "SearchResult",
187
+ "ServerError",
188
+ "SemanticChunkMetadataUpdateRequest",
189
+ "SemanticChunkMetadataUpdateResult",
190
+ "SourceFileReconstructRequest",
191
+ "TextReconstructionRequest",
192
+ "TextReconstructionResult",
193
+ "text_verification_phrase",
194
+ ]