tigrbl-core 0.4.2.dev3__tar.gz → 0.4.2.dev4__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 (58) hide show
  1. tigrbl_core-0.4.2.dev4/NOTICE +7 -0
  2. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/PKG-INFO +117 -28
  3. tigrbl_core-0.4.2.dev4/README.md +158 -0
  4. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/pyproject.toml +1 -1
  5. tigrbl_core-0.4.2.dev3/README.md +0 -70
  6. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/LICENSE +0 -0
  7. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/__init__.py +0 -0
  8. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/alias_spec.py +0 -0
  9. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/app_spec.py +0 -0
  10. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/binding_spec.py +0 -0
  11. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/column_spec.py +0 -0
  12. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/datatypes.py +0 -0
  13. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/docs_spec.py +0 -0
  14. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/engine_spec.py +0 -0
  15. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/field_spec.py +0 -0
  16. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/hook_spec.py +0 -0
  17. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/hook_types.py +0 -0
  18. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/io_spec.py +0 -0
  19. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/middleware_spec.py +0 -0
  20. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/monotone.py +0 -0
  21. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/op_spec.py +0 -0
  22. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/op_utils.py +0 -0
  23. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/path_spec.py +0 -0
  24. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/plugins.py +0 -0
  25. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/registry.py +0 -0
  26. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/request_spec.py +0 -0
  27. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/response_resolver.py +0 -0
  28. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/response_spec.py +0 -0
  29. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/response_types.py +0 -0
  30. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/router_spec.py +0 -0
  31. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/schema_spec.py +0 -0
  32. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/serde.py +0 -0
  33. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/session_spec.py +0 -0
  34. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/storage_spec.py +0 -0
  35. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/table_registry_spec.py +0 -0
  36. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/_spec/table_spec.py +0 -0
  37. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/canonical_json.py +0 -0
  38. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/config/__init__.py +0 -0
  39. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/config/constants.py +0 -0
  40. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/config/defaults.py +0 -0
  41. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/config/engine_traversal.py +0 -0
  42. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/config/resolver.py +0 -0
  43. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/core/__init__.py +0 -0
  44. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/op/__init__.py +0 -0
  45. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/op/canonical.py +0 -0
  46. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/op/collect.py +0 -0
  47. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/op/types.py +0 -0
  48. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/__init__.py +0 -0
  49. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/builder/__init__.py +0 -0
  50. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/builder/build_schema.py +0 -0
  51. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/builder/cache.py +0 -0
  52. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/builder/extras.py +0 -0
  53. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/builder/helpers.py +0 -0
  54. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/builder/list_params.py +0 -0
  55. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/builder/strip_parent_fields.py +0 -0
  56. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/get_schema.py +0 -0
  57. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/spec_json.py +0 -0
  58. {tigrbl_core-0.4.2.dev3 → tigrbl_core-0.4.2.dev4}/tigrbl_core/schema/utils.py +0 -0
@@ -0,0 +1,7 @@
1
+ Tigrbl
2
+ Copyright 2026 Swarmauri
3
+
4
+ This product includes software developed by Swarmauri.
5
+
6
+ Tigrbl is licensed under the Apache License, Version 2.0.
7
+ See the LICENSE file distributed with this work for the full license text.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: tigrbl-core
3
- Version: 0.4.2.dev3
3
+ Version: 0.4.2.dev4
4
4
  Summary: Core Tigrbl framework specifications, decorators, schemas, hooks, operations, and primitives for schema-first APIs.
5
5
  License: Apache License
6
6
  Version 2.0, January 2004
@@ -204,6 +204,7 @@ License: Apache License
204
204
  See the License for the specific language governing permissions and
205
205
  limitations under the License.
206
206
  License-File: LICENSE
207
+ License-File: NOTICE
207
208
  Keywords: tigrbl,asgi,api,json-rpc,rest,sqlalchemy,pydantic,core,decorators,schema,hooks,openapi,openrpc,schema-first
208
209
  Author: Jacob Stewart
209
210
  Author-email: jacob@swarmauri.com
@@ -242,12 +243,45 @@ Description-Content-Type: text/markdown
242
243
  <p><strong>Core Tigrbl framework specifications, decorators, schemas, hooks, operations, and primitives for schema-first APIs.</strong></p>
243
244
  <a href="https://pypi.org/project/tigrbl-core/"><img src="https://img.shields.io/pypi/v/tigrbl-core?label=PyPI" alt="PyPI version for tigrbl-core"/></a>
244
245
  <a href="https://pypi.org/project/tigrbl-core/"><img src="https://static.pepy.tech/badge/tigrbl-core" alt="Downloads for tigrbl-core"/></a>
246
+ <a href="https://discord.gg/K4YTAPapjR"><img src="https://img.shields.io/badge/Discord-Join%20chat-5865F2?logo=discord&logoColor=white" alt="Discord community for tigrbl-core"/></a>
245
247
  <a href="https://github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_core/README.md"><img src="https://hits.sh/github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_core/README.md.svg?label=hits" alt="Repository hits for tigrbl-core README"/></a>
246
248
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-525252" alt="Apache 2.0 license"/></a>
247
- <a href="pyproject.toml"><img src="https://img.shields.io/badge/python-3.10%20to%203.15-3776ab" alt="Python requirement for tigrbl-core"/></a>
249
+ <a href="pyproject.toml"><img src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-3776ab" alt="Python versions 3.10 | 3.11 | 3.12 | 3.13 | 3.14 for tigrbl-core"/></a>
248
250
  <a href="https://github.com/tigrbl/tigrbl/blob/master/docs/README.md"><img src="https://img.shields.io/badge/workspace-core-1f6feb" alt="Workspace group for tigrbl-core"/></a>
249
251
  </div>
250
252
 
253
+ ## What is tigrbl-core?
254
+
255
+ Core Tigrbl framework specifications, decorators, schemas, hooks, operations, and primitives for schema-first APIs.
256
+
257
+ ## Why use tigrbl-core?
258
+
259
+ Use it when you need this foundational Tigrbl layer directly as a small, focused dependency.
260
+
261
+ ## When should I install tigrbl-core?
262
+
263
+ Install it for extension packages, package-local tests, or internals that need this boundary without the whole facade.
264
+
265
+ ## Who is tigrbl-core for?
266
+
267
+ Framework maintainers, extension authors, and advanced users composing Tigrbl from split packages.
268
+
269
+ ## Where does tigrbl-core fit?
270
+
271
+ `tigrbl-core` lives at `pkgs/core/tigrbl_core` and serves a focused layer in the split Tigrbl framework.
272
+
273
+ ## How does tigrbl-core work?
274
+
275
+ It owns a narrow layer in the split workspace and is consumed by higher-level packages through explicit dependencies.
276
+
277
+ ## Certification Status
278
+
279
+ - Package status: governed package in the `tigrbl/tigrbl` workspace.
280
+ - Governance source: [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json).
281
+ - Release evidence: [publish workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml) validates package builds, tests, GitHub release assets, and PyPI publication for managed packages.
282
+ - Local certification guard: `pkgs/core/tigrbl_tests/tests/unit/test_package_badges_and_notices.py` verifies every package README keeps the Discord badge, Apache 2.0 badge, explicit Python-version badge, `LICENSE`, and `NOTICE`.
283
+ - Scope note: this README documents the package boundary. Runtime feature support remains governed by `.ssot/` entities and the conformance docs linked below.
284
+
251
285
  ## Install
252
286
 
253
287
  ```bash
@@ -258,52 +292,107 @@ uv add tigrbl-core
258
292
  pip install tigrbl-core
259
293
  ```
260
294
 
295
+ ## Surface Coverage
296
+
297
+ | Surface | Value |
298
+ |---|---|
299
+ | PyPI package | [`tigrbl-core`](https://pypi.org/project/tigrbl-core/) |
300
+ | Repository path | [`pkgs/core/tigrbl_core`](https://github.com/tigrbl/tigrbl/tree/master/pkgs/core/tigrbl_core) |
301
+ | Python import root | `tigrbl_core` |
302
+ | Console scripts | none declared |
303
+ | Entry points | none declared |
304
+ | Optional extras | none declared |
305
+ | Legal files | `LICENSE`, `NOTICE` |
306
+ | Supported Python | `3.10 | 3.11 | 3.12 | 3.13 | 3.14` |
307
+
261
308
  ## What It Owns
262
309
 
263
- `tigrbl-core` owns the core boundary inside the split Python workspace. Key implementation roots include `tigrbl_core` with `_spec/, canonical_json, config/, core/, op/, schema/`.
310
+ `tigrbl-core` owns the `foundational framework package` boundary. It should be installed when you need this package's focused responsibility without assuming every other Tigrbl workspace package is present.
311
+
312
+ Implementation orientation:
313
+ - `tigrbl_core`: _spec/, canonical_json, config/, core/, op/, schema/
314
+
315
+ ## Public API and Import Surface
264
316
 
265
- ## Use It When
317
+ - Import roots: `tigrbl_core`.
318
+ - Public symbols: public surface is module-oriented; import the package boundary and inspect submodules as needed.
319
+ - Workspace dependencies: [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/).
320
+ - External runtime dependencies: `pydantic>=2.10,<3`, `pyyaml`, `tomli-w`, `tomli>=2.0.1; python_version < '3.11'`.
266
321
 
267
- Use `tigrbl-core` when you want this subsystem directly as a package boundary instead of consuming it only through the top-level `tigrbl` facade.
322
+ ## Usage Examples
268
323
 
269
- ## Public Surface
324
+ ### Verify the installed package
270
325
 
271
- - Primary module root: `tigrbl_core` with module families `_spec/, canonical_json, config/, core/, op/, schema/`.
326
+ ```bash
327
+ python -m pip show tigrbl-core
328
+ python - <<'PY'
329
+ from importlib.metadata import version
330
+ print(version("tigrbl-core"))
331
+ PY
332
+ ```
272
333
 
273
- ## Internal Layout
334
+ ### Import the package boundary
274
335
 
275
- - Workspace path: `pkgs/core/tigrbl_core`.
276
- - Package class: `core framework package`.
277
- - Python requirement: `>=3.10,<3.15`.
278
- - `tigrbl_core` modules: `_spec/, canonical_json, config/, core/, op/, schema/`.
336
+ ```python
337
+ import importlib
279
338
 
280
- ## Dependency Surface
339
+ module = importlib.import_module("tigrbl_core._spec")
340
+ print(module.__name__)
341
+ ```
281
342
 
282
- - Workspace package dependencies: [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/).
283
- - External runtime dependencies: `pydantic>=2.10,<3`, `pyyaml`, `tomli-w`, `tomli>=2.0.1; python_version < '3.11'`.
284
- - Optional extras: none declared.
343
+ ### Inspect available modules
344
+
345
+ ```python
346
+ import importlib
347
+ import pkgutil
348
+
349
+ module = importlib.import_module("tigrbl_core._spec")
350
+ for info in pkgutil.iter_modules(getattr(module, "__path__", [])):
351
+ print(info.name)
352
+ ```
353
+
354
+ ### Use with the facade when building applications
355
+
356
+ ```bash
357
+ uv add tigrbl tigrbl-core
358
+ python - <<'PY'
359
+ import tigrbl
360
+ print(tigrbl.__name__)
361
+ PY
362
+ ```
363
+
364
+ ## How To Choose This Package
365
+
366
+ Choose `tigrbl-core` when the quick-answer table matches your use case. Choose [`tigrbl`](https://pypi.org/project/tigrbl/) instead when you want the full public facade. Choose a lower-level package such as [`tigrbl-core`](https://pypi.org/project/tigrbl-core/), [`tigrbl-base`](https://pypi.org/project/tigrbl-base/), or [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/) when you are building framework extensions or testing a specific internal boundary.
285
367
 
286
368
  ## Related Packages
287
369
 
288
- - [`tigrbl`](https://pypi.org/project/tigrbl/)
289
370
  - [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/)
371
+ - [`tigrbl`](https://pypi.org/project/tigrbl/)
372
+ - [`tigrbl-base`](https://pypi.org/project/tigrbl-base/)
373
+ - [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/)
374
+
375
+ ## Documentation Links
376
+
377
+ - [Workspace docs](https://github.com/tigrbl/tigrbl/blob/master/docs/README.md)
378
+ - [Package catalog](https://github.com/tigrbl/tigrbl/blob/master/docs/developer/PACKAGE_CATALOG.md)
379
+ - [Package layout](https://github.com/tigrbl/tigrbl/blob/master/docs/developer/PACKAGE_LAYOUT.md)
380
+ - [Current target](https://github.com/tigrbl/tigrbl/blob/master/docs/conformance/CURRENT_TARGET.md)
381
+ - [Current state](https://github.com/tigrbl/tigrbl/blob/master/docs/conformance/CURRENT_STATE.md)
382
+ - [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json)
383
+ - [Release workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml)
290
384
 
291
- ## Canonical Repository Docs
385
+ ## Support
292
386
 
293
- - `docs/README.md`
294
- - `docs/conformance/CURRENT_TARGET.md`
295
- - `docs/conformance/CURRENT_STATE.md`
296
- - `docs/conformance/NEXT_STEPS.md`
297
- - `docs/governance/DOC_POINTERS.md`
298
- - `docs/developer/PACKAGE_CATALOG.md`
299
- - `docs/developer/PACKAGE_LAYOUT.md`
387
+ - Community: [Discord](https://discord.gg/K4YTAPapjR).
388
+ - Issues: [GitHub Issues](https://github.com/tigrbl/tigrbl/issues).
389
+ - Repository: [pkgs/core/tigrbl_core](https://github.com/tigrbl/tigrbl/tree/master/pkgs/core/tigrbl_core).
300
390
 
301
391
  ## Package-local Boundary
302
392
 
303
- This file is a package-local distribution entry point.
304
- Use this page for package installation and boundary orientation. Repository governance, conformance state, target status, and release evidence remain governed from `docs/` and `.ssot/`.
393
+ This README is the package-local distribution entry point for `tigrbl-core`. It answers install, usage, API, ownership, and certification-orientation questions for this package. Broader architectural decisions, release status, and cross-package proof chains remain in the repository-level docs and SSOT registry.
305
394
 
306
395
  ## License
307
396
 
308
- Licensed under the Apache License, Version 2.0. See `LICENSE` and the official [Apache 2.0 license text](https://www.apache.org/licenses/LICENSE-2.0).
397
+ Licensed under the Apache License, Version 2.0. See `LICENSE`, `NOTICE`, and the official [Apache 2.0 license text](https://www.apache.org/licenses/LICENSE-2.0).
309
398
 
@@ -0,0 +1,158 @@
1
+ <div align="center">
2
+ <h1>tigrbl-core</h1>
3
+ <img src="https://raw.githubusercontent.com/swarmauri/swarmauri-sdk/master/assets/tigrbl_full_logo.png" alt="Tigrbl logo" width="140"/>
4
+ <p><strong>Core Tigrbl framework specifications, decorators, schemas, hooks, operations, and primitives for schema-first APIs.</strong></p>
5
+ <a href="https://pypi.org/project/tigrbl-core/"><img src="https://img.shields.io/pypi/v/tigrbl-core?label=PyPI" alt="PyPI version for tigrbl-core"/></a>
6
+ <a href="https://pypi.org/project/tigrbl-core/"><img src="https://static.pepy.tech/badge/tigrbl-core" alt="Downloads for tigrbl-core"/></a>
7
+ <a href="https://discord.gg/K4YTAPapjR"><img src="https://img.shields.io/badge/Discord-Join%20chat-5865F2?logo=discord&logoColor=white" alt="Discord community for tigrbl-core"/></a>
8
+ <a href="https://github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_core/README.md"><img src="https://hits.sh/github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_core/README.md.svg?label=hits" alt="Repository hits for tigrbl-core README"/></a>
9
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-525252" alt="Apache 2.0 license"/></a>
10
+ <a href="pyproject.toml"><img src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-3776ab" alt="Python versions 3.10 | 3.11 | 3.12 | 3.13 | 3.14 for tigrbl-core"/></a>
11
+ <a href="https://github.com/tigrbl/tigrbl/blob/master/docs/README.md"><img src="https://img.shields.io/badge/workspace-core-1f6feb" alt="Workspace group for tigrbl-core"/></a>
12
+ </div>
13
+
14
+ ## What is tigrbl-core?
15
+
16
+ Core Tigrbl framework specifications, decorators, schemas, hooks, operations, and primitives for schema-first APIs.
17
+
18
+ ## Why use tigrbl-core?
19
+
20
+ Use it when you need this foundational Tigrbl layer directly as a small, focused dependency.
21
+
22
+ ## When should I install tigrbl-core?
23
+
24
+ Install it for extension packages, package-local tests, or internals that need this boundary without the whole facade.
25
+
26
+ ## Who is tigrbl-core for?
27
+
28
+ Framework maintainers, extension authors, and advanced users composing Tigrbl from split packages.
29
+
30
+ ## Where does tigrbl-core fit?
31
+
32
+ `tigrbl-core` lives at `pkgs/core/tigrbl_core` and serves a focused layer in the split Tigrbl framework.
33
+
34
+ ## How does tigrbl-core work?
35
+
36
+ It owns a narrow layer in the split workspace and is consumed by higher-level packages through explicit dependencies.
37
+
38
+ ## Certification Status
39
+
40
+ - Package status: governed package in the `tigrbl/tigrbl` workspace.
41
+ - Governance source: [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json).
42
+ - Release evidence: [publish workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml) validates package builds, tests, GitHub release assets, and PyPI publication for managed packages.
43
+ - Local certification guard: `pkgs/core/tigrbl_tests/tests/unit/test_package_badges_and_notices.py` verifies every package README keeps the Discord badge, Apache 2.0 badge, explicit Python-version badge, `LICENSE`, and `NOTICE`.
44
+ - Scope note: this README documents the package boundary. Runtime feature support remains governed by `.ssot/` entities and the conformance docs linked below.
45
+
46
+ ## Install
47
+
48
+ ```bash
49
+ uv add tigrbl-core
50
+ ```
51
+
52
+ ```bash
53
+ pip install tigrbl-core
54
+ ```
55
+
56
+ ## Surface Coverage
57
+
58
+ | Surface | Value |
59
+ |---|---|
60
+ | PyPI package | [`tigrbl-core`](https://pypi.org/project/tigrbl-core/) |
61
+ | Repository path | [`pkgs/core/tigrbl_core`](https://github.com/tigrbl/tigrbl/tree/master/pkgs/core/tigrbl_core) |
62
+ | Python import root | `tigrbl_core` |
63
+ | Console scripts | none declared |
64
+ | Entry points | none declared |
65
+ | Optional extras | none declared |
66
+ | Legal files | `LICENSE`, `NOTICE` |
67
+ | Supported Python | `3.10 | 3.11 | 3.12 | 3.13 | 3.14` |
68
+
69
+ ## What It Owns
70
+
71
+ `tigrbl-core` owns the `foundational framework package` boundary. It should be installed when you need this package's focused responsibility without assuming every other Tigrbl workspace package is present.
72
+
73
+ Implementation orientation:
74
+ - `tigrbl_core`: _spec/, canonical_json, config/, core/, op/, schema/
75
+
76
+ ## Public API and Import Surface
77
+
78
+ - Import roots: `tigrbl_core`.
79
+ - Public symbols: public surface is module-oriented; import the package boundary and inspect submodules as needed.
80
+ - Workspace dependencies: [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/).
81
+ - External runtime dependencies: `pydantic>=2.10,<3`, `pyyaml`, `tomli-w`, `tomli>=2.0.1; python_version < '3.11'`.
82
+
83
+ ## Usage Examples
84
+
85
+ ### Verify the installed package
86
+
87
+ ```bash
88
+ python -m pip show tigrbl-core
89
+ python - <<'PY'
90
+ from importlib.metadata import version
91
+ print(version("tigrbl-core"))
92
+ PY
93
+ ```
94
+
95
+ ### Import the package boundary
96
+
97
+ ```python
98
+ import importlib
99
+
100
+ module = importlib.import_module("tigrbl_core._spec")
101
+ print(module.__name__)
102
+ ```
103
+
104
+ ### Inspect available modules
105
+
106
+ ```python
107
+ import importlib
108
+ import pkgutil
109
+
110
+ module = importlib.import_module("tigrbl_core._spec")
111
+ for info in pkgutil.iter_modules(getattr(module, "__path__", [])):
112
+ print(info.name)
113
+ ```
114
+
115
+ ### Use with the facade when building applications
116
+
117
+ ```bash
118
+ uv add tigrbl tigrbl-core
119
+ python - <<'PY'
120
+ import tigrbl
121
+ print(tigrbl.__name__)
122
+ PY
123
+ ```
124
+
125
+ ## How To Choose This Package
126
+
127
+ Choose `tigrbl-core` when the quick-answer table matches your use case. Choose [`tigrbl`](https://pypi.org/project/tigrbl/) instead when you want the full public facade. Choose a lower-level package such as [`tigrbl-core`](https://pypi.org/project/tigrbl-core/), [`tigrbl-base`](https://pypi.org/project/tigrbl-base/), or [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/) when you are building framework extensions or testing a specific internal boundary.
128
+
129
+ ## Related Packages
130
+
131
+ - [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/)
132
+ - [`tigrbl`](https://pypi.org/project/tigrbl/)
133
+ - [`tigrbl-base`](https://pypi.org/project/tigrbl-base/)
134
+ - [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/)
135
+
136
+ ## Documentation Links
137
+
138
+ - [Workspace docs](https://github.com/tigrbl/tigrbl/blob/master/docs/README.md)
139
+ - [Package catalog](https://github.com/tigrbl/tigrbl/blob/master/docs/developer/PACKAGE_CATALOG.md)
140
+ - [Package layout](https://github.com/tigrbl/tigrbl/blob/master/docs/developer/PACKAGE_LAYOUT.md)
141
+ - [Current target](https://github.com/tigrbl/tigrbl/blob/master/docs/conformance/CURRENT_TARGET.md)
142
+ - [Current state](https://github.com/tigrbl/tigrbl/blob/master/docs/conformance/CURRENT_STATE.md)
143
+ - [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json)
144
+ - [Release workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml)
145
+
146
+ ## Support
147
+
148
+ - Community: [Discord](https://discord.gg/K4YTAPapjR).
149
+ - Issues: [GitHub Issues](https://github.com/tigrbl/tigrbl/issues).
150
+ - Repository: [pkgs/core/tigrbl_core](https://github.com/tigrbl/tigrbl/tree/master/pkgs/core/tigrbl_core).
151
+
152
+ ## Package-local Boundary
153
+
154
+ This README is the package-local distribution entry point for `tigrbl-core`. It answers install, usage, API, ownership, and certification-orientation questions for this package. Broader architectural decisions, release status, and cross-package proof chains remain in the repository-level docs and SSOT registry.
155
+
156
+ ## License
157
+
158
+ Licensed under the Apache License, Version 2.0. See `LICENSE`, `NOTICE`, and the official [Apache 2.0 license text](https://www.apache.org/licenses/LICENSE-2.0).
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "tigrbl-core"
3
- version = "0.4.2.dev3"
3
+ version = "0.4.2.dev4"
4
4
  description = "Core Tigrbl framework specifications, decorators, schemas, hooks, operations, and primitives for schema-first APIs."
5
5
  readme = "README.md"
6
6
  license = { file = "LICENSE" }
@@ -1,70 +0,0 @@
1
- <div align="center">
2
- <h1>tigrbl-core</h1>
3
- <img src="https://raw.githubusercontent.com/swarmauri/swarmauri-sdk/master/assets/tigrbl_full_logo.png" alt="Tigrbl logo" width="140"/>
4
- <p><strong>Core Tigrbl framework specifications, decorators, schemas, hooks, operations, and primitives for schema-first APIs.</strong></p>
5
- <a href="https://pypi.org/project/tigrbl-core/"><img src="https://img.shields.io/pypi/v/tigrbl-core?label=PyPI" alt="PyPI version for tigrbl-core"/></a>
6
- <a href="https://pypi.org/project/tigrbl-core/"><img src="https://static.pepy.tech/badge/tigrbl-core" alt="Downloads for tigrbl-core"/></a>
7
- <a href="https://github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_core/README.md"><img src="https://hits.sh/github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_core/README.md.svg?label=hits" alt="Repository hits for tigrbl-core README"/></a>
8
- <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-525252" alt="Apache 2.0 license"/></a>
9
- <a href="pyproject.toml"><img src="https://img.shields.io/badge/python-3.10%20to%203.15-3776ab" alt="Python requirement for tigrbl-core"/></a>
10
- <a href="https://github.com/tigrbl/tigrbl/blob/master/docs/README.md"><img src="https://img.shields.io/badge/workspace-core-1f6feb" alt="Workspace group for tigrbl-core"/></a>
11
- </div>
12
-
13
- ## Install
14
-
15
- ```bash
16
- uv add tigrbl-core
17
- ```
18
-
19
- ```bash
20
- pip install tigrbl-core
21
- ```
22
-
23
- ## What It Owns
24
-
25
- `tigrbl-core` owns the core boundary inside the split Python workspace. Key implementation roots include `tigrbl_core` with `_spec/, canonical_json, config/, core/, op/, schema/`.
26
-
27
- ## Use It When
28
-
29
- Use `tigrbl-core` when you want this subsystem directly as a package boundary instead of consuming it only through the top-level `tigrbl` facade.
30
-
31
- ## Public Surface
32
-
33
- - Primary module root: `tigrbl_core` with module families `_spec/, canonical_json, config/, core/, op/, schema/`.
34
-
35
- ## Internal Layout
36
-
37
- - Workspace path: `pkgs/core/tigrbl_core`.
38
- - Package class: `core framework package`.
39
- - Python requirement: `>=3.10,<3.15`.
40
- - `tigrbl_core` modules: `_spec/, canonical_json, config/, core/, op/, schema/`.
41
-
42
- ## Dependency Surface
43
-
44
- - Workspace package dependencies: [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/).
45
- - External runtime dependencies: `pydantic>=2.10,<3`, `pyyaml`, `tomli-w`, `tomli>=2.0.1; python_version < '3.11'`.
46
- - Optional extras: none declared.
47
-
48
- ## Related Packages
49
-
50
- - [`tigrbl`](https://pypi.org/project/tigrbl/)
51
- - [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/)
52
-
53
- ## Canonical Repository Docs
54
-
55
- - `docs/README.md`
56
- - `docs/conformance/CURRENT_TARGET.md`
57
- - `docs/conformance/CURRENT_STATE.md`
58
- - `docs/conformance/NEXT_STEPS.md`
59
- - `docs/governance/DOC_POINTERS.md`
60
- - `docs/developer/PACKAGE_CATALOG.md`
61
- - `docs/developer/PACKAGE_LAYOUT.md`
62
-
63
- ## Package-local Boundary
64
-
65
- This file is a package-local distribution entry point.
66
- Use this page for package installation and boundary orientation. Repository governance, conformance state, target status, and release evidence remain governed from `docs/` and `.ssot/`.
67
-
68
- ## License
69
-
70
- Licensed under the Apache License, Version 2.0. See `LICENSE` and the official [Apache 2.0 license text](https://www.apache.org/licenses/LICENSE-2.0).