tigrbl-concrete 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 (129) hide show
  1. tigrbl_concrete-0.4.2.dev4/NOTICE +7 -0
  2. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/PKG-INFO +116 -28
  3. tigrbl_concrete-0.4.2.dev4/README.md +163 -0
  4. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/pyproject.toml +1 -1
  5. tigrbl_concrete-0.4.2.dev3/README.md +0 -76
  6. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/LICENSE +0 -0
  7. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/__init__.py +0 -0
  8. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/__init__.py +0 -0
  9. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_alias.py +0 -0
  10. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_allow_anon.py +0 -0
  11. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_app.py +0 -0
  12. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_background.py +0 -0
  13. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_binding.py +0 -0
  14. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_body.py +0 -0
  15. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_column.py +0 -0
  16. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_cors_middleware.py +0 -0
  17. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_engine.py +0 -0
  18. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_event_stream_response.py +0 -0
  19. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_file_response.py +0 -0
  20. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_headers.py +0 -0
  21. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_hook.py +0 -0
  22. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_html_response.py +0 -0
  23. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_httpx.py +0 -0
  24. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_json_response.py +0 -0
  25. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_middleware.py +0 -0
  26. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_op.py +0 -0
  27. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_op_registry.py +0 -0
  28. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_plain_text_response.py +0 -0
  29. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_redirect_response.py +0 -0
  30. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_request.py +0 -0
  31. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_request_adapters.py +0 -0
  32. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_response.py +0 -0
  33. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_route.py +0 -0
  34. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_router.py +0 -0
  35. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_rust_backend.py +0 -0
  36. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_schema.py +0 -0
  37. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_security/__init__.py +0 -0
  38. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_security/api_key.py +0 -0
  39. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_security/http_basic.py +0 -0
  40. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_security/http_bearer.py +0 -0
  41. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_security/mutual_tls.py +0 -0
  42. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_security/oauth2.py +0 -0
  43. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_security/openid_connect.py +0 -0
  44. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_session.py +0 -0
  45. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_storage.py +0 -0
  46. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_streaming_response.py +0 -0
  47. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_table.py +0 -0
  48. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_table_registry.py +0 -0
  49. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/_websocket.py +0 -0
  50. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/dependencies.py +0 -0
  51. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/engine_resolver.py +0 -0
  52. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/tigrbl_app.py +0 -0
  53. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_concrete/tigrbl_router.py +0 -0
  54. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/__init__.py +0 -0
  55. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/allow_anon.py +0 -0
  56. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/engine.py +0 -0
  57. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/eventful.py +0 -0
  58. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/hook.py +0 -0
  59. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/middlewares.py +0 -0
  60. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/op.py +0 -0
  61. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/response.py +0 -0
  62. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/rest.py +0 -0
  63. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/schema.py +0 -0
  64. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_decorators/session.py +0 -0
  65. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/__init__.py +0 -0
  66. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/appspec/__init__.py +0 -0
  67. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/appspec/docs_lowering.py +0 -0
  68. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/appspec/engine_lowering.py +0 -0
  69. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/appspec/path_lowering.py +0 -0
  70. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/column_mro_collect.py +0 -0
  71. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/core_resolver.py +0 -0
  72. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/model.py +0 -0
  73. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/model_helpers.py +0 -0
  74. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/op_resolver.py +0 -0
  75. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/router/__init__.py +0 -0
  76. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/router/common.py +0 -0
  77. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/router/include.py +0 -0
  78. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/router/resource_proxy.py +0 -0
  79. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/router/rpc.py +0 -0
  80. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/_mapping/rpc.py +0 -0
  81. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/ddl/__init__.py +0 -0
  82. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/decorators.py +0 -0
  83. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/engine/__init__.py +0 -0
  84. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/engine/bind.py +0 -0
  85. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/engine/builders.py +0 -0
  86. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/engine/capabilities.py +0 -0
  87. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/engine/collect.py +0 -0
  88. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/engine/plugins.py +0 -0
  89. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/engine/registry.py +0 -0
  90. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/engine/resolver.py +0 -0
  91. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/factories/__init__.py +0 -0
  92. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/factories/app.py +0 -0
  93. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/resolve/__init__.py +0 -0
  94. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/resolve/handlers.py +0 -0
  95. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/security/__init__.py +0 -0
  96. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/security/dependencies.py +0 -0
  97. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/shortcuts/__init__.py +0 -0
  98. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/shortcuts/app.py +0 -0
  99. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/shortcuts/rest.py +0 -0
  100. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/__init__.py +0 -0
  101. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/diagnostics/__init__.py +0 -0
  102. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/diagnostics/healthz.py +0 -0
  103. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/diagnostics/hookz.py +0 -0
  104. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/diagnostics/kernelz.py +0 -0
  105. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/diagnostics/methodz.py +0 -0
  106. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/diagnostics/router.py +0 -0
  107. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/diagnostics/utils.py +0 -0
  108. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/__init__.py +0 -0
  109. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/json_schema.py +0 -0
  110. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/lens.py +0 -0
  111. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/openapi/__init__.py +0 -0
  112. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/openapi/helpers.py +0 -0
  113. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/openapi/metadata.py +0 -0
  114. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/openapi/mount.py +0 -0
  115. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/openapi/schema.py +0 -0
  116. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/openrpc.py +0 -0
  117. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/runtime_ops.py +0 -0
  118. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/surface.py +0 -0
  119. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/docs/swagger.py +0 -0
  120. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/favicon/__init__.py +0 -0
  121. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/favicon/assets/favicon.svg +0 -0
  122. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/static.py +0 -0
  123. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/system/uvicorn.py +0 -0
  124. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/transport/__init__.py +0 -0
  125. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/transport/jsonrpc/__init__.py +0 -0
  126. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/transport/jsonrpc/helpers.py +0 -0
  127. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/transport/jsonrpc/models.py +0 -0
  128. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/transport/rest/__init__.py +0 -0
  129. {tigrbl_concrete-0.4.2.dev3 → tigrbl_concrete-0.4.2.dev4}/tigrbl_concrete/transport/rest/aggregator.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-concrete
3
- Version: 0.4.2.dev3
3
+ Version: 0.4.2.dev4
4
4
  Summary: Concrete Tigrbl implementations for reusable framework behavior, sessions, routes, responses, and base abstraction adapters.
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,concrete,implementation,framework,openapi,openrpc,schema-first
208
209
  Author: Jacob Stewart
209
210
  Author-email: jacob@swarmauri.com
@@ -249,12 +250,45 @@ Description-Content-Type: text/markdown
249
250
  <p><strong>Concrete Tigrbl implementations for reusable framework behavior, sessions, routes, responses, and base abstraction adapters.</strong></p>
250
251
  <a href="https://pypi.org/project/tigrbl-concrete/"><img src="https://img.shields.io/pypi/v/tigrbl-concrete?label=PyPI" alt="PyPI version for tigrbl-concrete"/></a>
251
252
  <a href="https://pypi.org/project/tigrbl-concrete/"><img src="https://static.pepy.tech/badge/tigrbl-concrete" alt="Downloads for tigrbl-concrete"/></a>
253
+ <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-concrete"/></a>
252
254
  <a href="https://github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_concrete/README.md"><img src="https://hits.sh/github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_concrete/README.md.svg?label=hits" alt="Repository hits for tigrbl-concrete README"/></a>
253
255
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-525252" alt="Apache 2.0 license"/></a>
254
- <a href="pyproject.toml"><img src="https://img.shields.io/badge/python-3.10%20to%203.15-3776ab" alt="Python requirement for tigrbl-concrete"/></a>
256
+ <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-concrete"/></a>
255
257
  <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-concrete"/></a>
256
258
  </div>
257
259
 
260
+ ## What is tigrbl-concrete?
261
+
262
+ Concrete Tigrbl implementations for reusable framework behavior, sessions, routes, responses, and base abstraction adapters.
263
+
264
+ ## Why use tigrbl-concrete?
265
+
266
+ Use it when you need this foundational Tigrbl layer directly as a small, focused dependency.
267
+
268
+ ## When should I install tigrbl-concrete?
269
+
270
+ Install it for extension packages, package-local tests, or internals that need this boundary without the whole facade.
271
+
272
+ ## Who is tigrbl-concrete for?
273
+
274
+ Framework maintainers, extension authors, and advanced users composing Tigrbl from split packages.
275
+
276
+ ## Where does tigrbl-concrete fit?
277
+
278
+ `tigrbl-concrete` lives at `pkgs/core/tigrbl_concrete` and serves a focused layer in the split Tigrbl framework.
279
+
280
+ ## How does tigrbl-concrete work?
281
+
282
+ It owns a narrow layer in the split workspace and is consumed by higher-level packages through explicit dependencies.
283
+
284
+ ## Certification Status
285
+
286
+ - Package status: governed package in the `tigrbl/tigrbl` workspace.
287
+ - Governance source: [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json).
288
+ - 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.
289
+ - 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`.
290
+ - Scope note: this README documents the package boundary. Runtime feature support remains governed by `.ssot/` entities and the conformance docs linked below.
291
+
258
292
  ## Install
259
293
 
260
294
  ```bash
@@ -265,34 +299,81 @@ uv add tigrbl-concrete
265
299
  pip install tigrbl-concrete
266
300
  ```
267
301
 
302
+ ## Surface Coverage
303
+
304
+ | Surface | Value |
305
+ |---|---|
306
+ | PyPI package | [`tigrbl-concrete`](https://pypi.org/project/tigrbl-concrete/) |
307
+ | Repository path | [`pkgs/core/tigrbl_concrete`](https://github.com/tigrbl/tigrbl/tree/master/pkgs/core/tigrbl_concrete) |
308
+ | Python import root | `tigrbl_concrete` |
309
+ | Console scripts | none declared |
310
+ | Entry points | `tigrbl.engine_plugins` |
311
+ | Optional extras | none declared |
312
+ | Legal files | `LICENSE`, `NOTICE` |
313
+ | Supported Python | `3.10 | 3.11 | 3.12 | 3.13 | 3.14` |
314
+
268
315
  ## What It Owns
269
316
 
270
- `tigrbl-concrete` owns the concrete boundary inside the split Python workspace. Key implementation roots include `tigrbl_concrete` with `_concrete/, _decorators/, _mapping/, ddl/, decorators, engine/`.
317
+ `tigrbl-concrete` 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.
318
+
319
+ Implementation orientation:
320
+ - `tigrbl_concrete`: _concrete/, _decorators/, _mapping/, ddl/, decorators, engine/, factories/, resolve/, security/, shortcuts/, system/, transport/
321
+
322
+ ## Public API and Import Surface
271
323
 
272
- ## Use It When
324
+ - Import roots: `tigrbl_concrete`.
325
+ - Public symbols: public surface is module-oriented; import the package boundary and inspect submodules as needed.
326
+ - Workspace dependencies: [`tigrbl-atoms`](https://pypi.org/project/tigrbl-atoms/), [`tigrbl-base`](https://pypi.org/project/tigrbl-base/), [`tigrbl-core`](https://pypi.org/project/tigrbl-core/), [`tigrbl-ops-olap`](https://pypi.org/project/tigrbl-ops-olap/), [`tigrbl-ops-oltp`](https://pypi.org/project/tigrbl-ops-oltp/), [`tigrbl-ops-realtime`](https://pypi.org/project/tigrbl-ops-realtime/), [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/), [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/).
327
+ - External runtime dependencies: `orjson`, `pydantic>=2.0`, `sqlalchemy`, `uvicorn`.
273
328
 
274
- Use `tigrbl-concrete` when you want this subsystem directly as a package boundary instead of consuming it only through the top-level `tigrbl` facade.
329
+ ## Usage Examples
275
330
 
276
- ## Public Surface
331
+ ### Verify the installed package
277
332
 
278
- - `tigrbl_concrete` exposes `import_module, Any, build_handlers, build_hooks, build_schemas, build_rest_router`.
333
+ ```bash
334
+ python -m pip show tigrbl-concrete
335
+ python - <<'PY'
336
+ from importlib.metadata import version
337
+ print(version("tigrbl-concrete"))
338
+ PY
339
+ ```
279
340
 
280
- ## Internal Layout
341
+ ### Import the package boundary
281
342
 
282
- - Workspace path: `pkgs/core/tigrbl_concrete`.
283
- - Package class: `core framework package`.
284
- - Python requirement: `>=3.10,<3.15`.
285
- - `tigrbl_concrete` modules: `_concrete/, _decorators/, _mapping/, ddl/, decorators, engine/, factories/, resolve/, security/, shortcuts/`.
343
+ ```python
344
+ import importlib
286
345
 
287
- ## Dependency Surface
346
+ module = importlib.import_module("tigrbl_concrete")
347
+ print(module.__name__)
348
+ ```
288
349
 
289
- - Workspace package dependencies: [`tigrbl-atoms`](https://pypi.org/project/tigrbl-atoms/), [`tigrbl-base`](https://pypi.org/project/tigrbl-base/), [`tigrbl-core`](https://pypi.org/project/tigrbl-core/), [`tigrbl-ops-olap`](https://pypi.org/project/tigrbl-ops-olap/), [`tigrbl-ops-oltp`](https://pypi.org/project/tigrbl-ops-oltp/), [`tigrbl-ops-realtime`](https://pypi.org/project/tigrbl-ops-realtime/), [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/), [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/).
290
- - External runtime dependencies: `orjson`, `pydantic>=2.0`, `sqlalchemy`, `uvicorn`.
291
- - Optional extras: none declared.
350
+ ### Inspect available modules
351
+
352
+ ```python
353
+ import importlib
354
+ import pkgutil
355
+
356
+ module = importlib.import_module("tigrbl_concrete")
357
+ for info in pkgutil.iter_modules(getattr(module, "__path__", [])):
358
+ print(info.name)
359
+ ```
360
+
361
+ ### Use with the facade when building applications
362
+
363
+ ```bash
364
+ uv add tigrbl tigrbl-concrete
365
+ python - <<'PY'
366
+ import tigrbl
367
+ print(tigrbl.__name__)
368
+ PY
369
+ ```
370
+
371
+ ## How To Choose This Package
372
+
373
+ Choose `tigrbl-concrete` 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.
292
374
 
293
375
  ## Related Packages
294
376
 
295
- - [`tigrbl`](https://pypi.org/project/tigrbl/)
296
377
  - [`tigrbl-atoms`](https://pypi.org/project/tigrbl-atoms/)
297
378
  - [`tigrbl-base`](https://pypi.org/project/tigrbl-base/)
298
379
  - [`tigrbl-core`](https://pypi.org/project/tigrbl-core/)
@@ -300,23 +381,30 @@ Use `tigrbl-concrete` when you want this subsystem directly as a package boundar
300
381
  - [`tigrbl-ops-oltp`](https://pypi.org/project/tigrbl-ops-oltp/)
301
382
  - [`tigrbl-ops-realtime`](https://pypi.org/project/tigrbl-ops-realtime/)
302
383
  - [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/)
384
+ - [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/)
385
+ - [`tigrbl`](https://pypi.org/project/tigrbl/)
386
+
387
+ ## Documentation Links
388
+
389
+ - [Workspace docs](https://github.com/tigrbl/tigrbl/blob/master/docs/README.md)
390
+ - [Package catalog](https://github.com/tigrbl/tigrbl/blob/master/docs/developer/PACKAGE_CATALOG.md)
391
+ - [Package layout](https://github.com/tigrbl/tigrbl/blob/master/docs/developer/PACKAGE_LAYOUT.md)
392
+ - [Current target](https://github.com/tigrbl/tigrbl/blob/master/docs/conformance/CURRENT_TARGET.md)
393
+ - [Current state](https://github.com/tigrbl/tigrbl/blob/master/docs/conformance/CURRENT_STATE.md)
394
+ - [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json)
395
+ - [Release workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml)
303
396
 
304
- ## Canonical Repository Docs
397
+ ## Support
305
398
 
306
- - `docs/README.md`
307
- - `docs/conformance/CURRENT_TARGET.md`
308
- - `docs/conformance/CURRENT_STATE.md`
309
- - `docs/conformance/NEXT_STEPS.md`
310
- - `docs/governance/DOC_POINTERS.md`
311
- - `docs/developer/PACKAGE_CATALOG.md`
312
- - `docs/developer/PACKAGE_LAYOUT.md`
399
+ - Community: [Discord](https://discord.gg/K4YTAPapjR).
400
+ - Issues: [GitHub Issues](https://github.com/tigrbl/tigrbl/issues).
401
+ - Repository: [pkgs/core/tigrbl_concrete](https://github.com/tigrbl/tigrbl/tree/master/pkgs/core/tigrbl_concrete).
313
402
 
314
403
  ## Package-local Boundary
315
404
 
316
- This file is a package-local distribution entry point.
317
- Use this page for package installation and boundary orientation. Repository governance, conformance state, target status, and release evidence remain governed from `docs/` and `.ssot/`.
405
+ This README is the package-local distribution entry point for `tigrbl-concrete`. 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.
318
406
 
319
407
  ## License
320
408
 
321
- 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).
409
+ 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).
322
410
 
@@ -0,0 +1,163 @@
1
+ <div align="center">
2
+ <h1>tigrbl-concrete</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>Concrete Tigrbl implementations for reusable framework behavior, sessions, routes, responses, and base abstraction adapters.</strong></p>
5
+ <a href="https://pypi.org/project/tigrbl-concrete/"><img src="https://img.shields.io/pypi/v/tigrbl-concrete?label=PyPI" alt="PyPI version for tigrbl-concrete"/></a>
6
+ <a href="https://pypi.org/project/tigrbl-concrete/"><img src="https://static.pepy.tech/badge/tigrbl-concrete" alt="Downloads for tigrbl-concrete"/></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-concrete"/></a>
8
+ <a href="https://github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_concrete/README.md"><img src="https://hits.sh/github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_concrete/README.md.svg?label=hits" alt="Repository hits for tigrbl-concrete 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-concrete"/></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-concrete"/></a>
12
+ </div>
13
+
14
+ ## What is tigrbl-concrete?
15
+
16
+ Concrete Tigrbl implementations for reusable framework behavior, sessions, routes, responses, and base abstraction adapters.
17
+
18
+ ## Why use tigrbl-concrete?
19
+
20
+ Use it when you need this foundational Tigrbl layer directly as a small, focused dependency.
21
+
22
+ ## When should I install tigrbl-concrete?
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-concrete for?
27
+
28
+ Framework maintainers, extension authors, and advanced users composing Tigrbl from split packages.
29
+
30
+ ## Where does tigrbl-concrete fit?
31
+
32
+ `tigrbl-concrete` lives at `pkgs/core/tigrbl_concrete` and serves a focused layer in the split Tigrbl framework.
33
+
34
+ ## How does tigrbl-concrete 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-concrete
50
+ ```
51
+
52
+ ```bash
53
+ pip install tigrbl-concrete
54
+ ```
55
+
56
+ ## Surface Coverage
57
+
58
+ | Surface | Value |
59
+ |---|---|
60
+ | PyPI package | [`tigrbl-concrete`](https://pypi.org/project/tigrbl-concrete/) |
61
+ | Repository path | [`pkgs/core/tigrbl_concrete`](https://github.com/tigrbl/tigrbl/tree/master/pkgs/core/tigrbl_concrete) |
62
+ | Python import root | `tigrbl_concrete` |
63
+ | Console scripts | none declared |
64
+ | Entry points | `tigrbl.engine_plugins` |
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-concrete` 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_concrete`: _concrete/, _decorators/, _mapping/, ddl/, decorators, engine/, factories/, resolve/, security/, shortcuts/, system/, transport/
75
+
76
+ ## Public API and Import Surface
77
+
78
+ - Import roots: `tigrbl_concrete`.
79
+ - Public symbols: public surface is module-oriented; import the package boundary and inspect submodules as needed.
80
+ - Workspace dependencies: [`tigrbl-atoms`](https://pypi.org/project/tigrbl-atoms/), [`tigrbl-base`](https://pypi.org/project/tigrbl-base/), [`tigrbl-core`](https://pypi.org/project/tigrbl-core/), [`tigrbl-ops-olap`](https://pypi.org/project/tigrbl-ops-olap/), [`tigrbl-ops-oltp`](https://pypi.org/project/tigrbl-ops-oltp/), [`tigrbl-ops-realtime`](https://pypi.org/project/tigrbl-ops-realtime/), [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/), [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/).
81
+ - External runtime dependencies: `orjson`, `pydantic>=2.0`, `sqlalchemy`, `uvicorn`.
82
+
83
+ ## Usage Examples
84
+
85
+ ### Verify the installed package
86
+
87
+ ```bash
88
+ python -m pip show tigrbl-concrete
89
+ python - <<'PY'
90
+ from importlib.metadata import version
91
+ print(version("tigrbl-concrete"))
92
+ PY
93
+ ```
94
+
95
+ ### Import the package boundary
96
+
97
+ ```python
98
+ import importlib
99
+
100
+ module = importlib.import_module("tigrbl_concrete")
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_concrete")
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-concrete
119
+ python - <<'PY'
120
+ import tigrbl
121
+ print(tigrbl.__name__)
122
+ PY
123
+ ```
124
+
125
+ ## How To Choose This Package
126
+
127
+ Choose `tigrbl-concrete` 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-atoms`](https://pypi.org/project/tigrbl-atoms/)
132
+ - [`tigrbl-base`](https://pypi.org/project/tigrbl-base/)
133
+ - [`tigrbl-core`](https://pypi.org/project/tigrbl-core/)
134
+ - [`tigrbl-ops-olap`](https://pypi.org/project/tigrbl-ops-olap/)
135
+ - [`tigrbl-ops-oltp`](https://pypi.org/project/tigrbl-ops-oltp/)
136
+ - [`tigrbl-ops-realtime`](https://pypi.org/project/tigrbl-ops-realtime/)
137
+ - [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/)
138
+ - [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/)
139
+ - [`tigrbl`](https://pypi.org/project/tigrbl/)
140
+
141
+ ## Documentation Links
142
+
143
+ - [Workspace docs](https://github.com/tigrbl/tigrbl/blob/master/docs/README.md)
144
+ - [Package catalog](https://github.com/tigrbl/tigrbl/blob/master/docs/developer/PACKAGE_CATALOG.md)
145
+ - [Package layout](https://github.com/tigrbl/tigrbl/blob/master/docs/developer/PACKAGE_LAYOUT.md)
146
+ - [Current target](https://github.com/tigrbl/tigrbl/blob/master/docs/conformance/CURRENT_TARGET.md)
147
+ - [Current state](https://github.com/tigrbl/tigrbl/blob/master/docs/conformance/CURRENT_STATE.md)
148
+ - [SSOT registry](https://github.com/tigrbl/tigrbl/blob/master/.ssot/registry.json)
149
+ - [Release workflow](https://github.com/tigrbl/tigrbl/actions/workflows/publish.yml)
150
+
151
+ ## Support
152
+
153
+ - Community: [Discord](https://discord.gg/K4YTAPapjR).
154
+ - Issues: [GitHub Issues](https://github.com/tigrbl/tigrbl/issues).
155
+ - Repository: [pkgs/core/tigrbl_concrete](https://github.com/tigrbl/tigrbl/tree/master/pkgs/core/tigrbl_concrete).
156
+
157
+ ## Package-local Boundary
158
+
159
+ This README is the package-local distribution entry point for `tigrbl-concrete`. 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.
160
+
161
+ ## License
162
+
163
+ 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-concrete"
3
- version = "0.4.2.dev3"
3
+ version = "0.4.2.dev4"
4
4
  description = "Concrete Tigrbl implementations for reusable framework behavior, sessions, routes, responses, and base abstraction adapters."
5
5
  readme = "README.md"
6
6
  license = { file = "LICENSE" }
@@ -1,76 +0,0 @@
1
- <div align="center">
2
- <h1>tigrbl-concrete</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>Concrete Tigrbl implementations for reusable framework behavior, sessions, routes, responses, and base abstraction adapters.</strong></p>
5
- <a href="https://pypi.org/project/tigrbl-concrete/"><img src="https://img.shields.io/pypi/v/tigrbl-concrete?label=PyPI" alt="PyPI version for tigrbl-concrete"/></a>
6
- <a href="https://pypi.org/project/tigrbl-concrete/"><img src="https://static.pepy.tech/badge/tigrbl-concrete" alt="Downloads for tigrbl-concrete"/></a>
7
- <a href="https://github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_concrete/README.md"><img src="https://hits.sh/github.com/tigrbl/tigrbl/blob/master/pkgs/core/tigrbl_concrete/README.md.svg?label=hits" alt="Repository hits for tigrbl-concrete 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-concrete"/></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-concrete"/></a>
11
- </div>
12
-
13
- ## Install
14
-
15
- ```bash
16
- uv add tigrbl-concrete
17
- ```
18
-
19
- ```bash
20
- pip install tigrbl-concrete
21
- ```
22
-
23
- ## What It Owns
24
-
25
- `tigrbl-concrete` owns the concrete boundary inside the split Python workspace. Key implementation roots include `tigrbl_concrete` with `_concrete/, _decorators/, _mapping/, ddl/, decorators, engine/`.
26
-
27
- ## Use It When
28
-
29
- Use `tigrbl-concrete` 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
- - `tigrbl_concrete` exposes `import_module, Any, build_handlers, build_hooks, build_schemas, build_rest_router`.
34
-
35
- ## Internal Layout
36
-
37
- - Workspace path: `pkgs/core/tigrbl_concrete`.
38
- - Package class: `core framework package`.
39
- - Python requirement: `>=3.10,<3.15`.
40
- - `tigrbl_concrete` modules: `_concrete/, _decorators/, _mapping/, ddl/, decorators, engine/, factories/, resolve/, security/, shortcuts/`.
41
-
42
- ## Dependency Surface
43
-
44
- - Workspace package dependencies: [`tigrbl-atoms`](https://pypi.org/project/tigrbl-atoms/), [`tigrbl-base`](https://pypi.org/project/tigrbl-base/), [`tigrbl-core`](https://pypi.org/project/tigrbl-core/), [`tigrbl-ops-olap`](https://pypi.org/project/tigrbl-ops-olap/), [`tigrbl-ops-oltp`](https://pypi.org/project/tigrbl-ops-oltp/), [`tigrbl-ops-realtime`](https://pypi.org/project/tigrbl-ops-realtime/), [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/), [`tigrbl-typing`](https://pypi.org/project/tigrbl-typing/).
45
- - External runtime dependencies: `orjson`, `pydantic>=2.0`, `sqlalchemy`, `uvicorn`.
46
- - Optional extras: none declared.
47
-
48
- ## Related Packages
49
-
50
- - [`tigrbl`](https://pypi.org/project/tigrbl/)
51
- - [`tigrbl-atoms`](https://pypi.org/project/tigrbl-atoms/)
52
- - [`tigrbl-base`](https://pypi.org/project/tigrbl-base/)
53
- - [`tigrbl-core`](https://pypi.org/project/tigrbl-core/)
54
- - [`tigrbl-ops-olap`](https://pypi.org/project/tigrbl-ops-olap/)
55
- - [`tigrbl-ops-oltp`](https://pypi.org/project/tigrbl-ops-oltp/)
56
- - [`tigrbl-ops-realtime`](https://pypi.org/project/tigrbl-ops-realtime/)
57
- - [`tigrbl-runtime`](https://pypi.org/project/tigrbl-runtime/)
58
-
59
- ## Canonical Repository Docs
60
-
61
- - `docs/README.md`
62
- - `docs/conformance/CURRENT_TARGET.md`
63
- - `docs/conformance/CURRENT_STATE.md`
64
- - `docs/conformance/NEXT_STEPS.md`
65
- - `docs/governance/DOC_POINTERS.md`
66
- - `docs/developer/PACKAGE_CATALOG.md`
67
- - `docs/developer/PACKAGE_LAYOUT.md`
68
-
69
- ## Package-local Boundary
70
-
71
- This file is a package-local distribution entry point.
72
- Use this page for package installation and boundary orientation. Repository governance, conformance state, target status, and release evidence remain governed from `docs/` and `.ssot/`.
73
-
74
- ## License
75
-
76
- 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).