Shared type definitions for the KRL Analytics Platform
Project description
KRL Types
Version: 0.1.0
License: MIT
Python: ≥3.9
Status: ⚠️ CRITICAL DEPENDENCY RISK
⚠️ CRITICAL: NOT PUBLISHED TO PyPI
This package is NOT published to PyPI but is declared as a dependency by other packages.
If krl-data-connectors or krl-premium-backend declare krl-types as a dependency in their pyproject.toml, then:
pip install krl-data-connectors # WILL FAIL
Impact
| Package | Declares krl-types? | Installation Impact |
|---|---|---|
| krl-data-connectors | ⚠️ Yes | Installation will fail |
| krl-premium-backend | ⚠️ Possibly | Installation may fail |
Resolution Required
- Option A: Publish krl-types to PyPI immediately
- Option B: Remove krl-types dependency from other packages and inline the types
- Option C: Use a private PyPI index
SECTION A — Executive & Strategic Overview
What This Repository Does
KRL Types provides shared type definitions used across the KRL suite:
- Billing Enums —
LicenseTier,BillingCycle,UsageType - Connector Enums —
ConnectorTier,DataSourceType - Model Enums —
ModelCategory,ModelTier - Pydantic Models — Shared request/response schemas
Why This Matters
Type consistency across packages:
- Ensures frontend and backend use same tier names
- Prevents "Community" vs "COMMUNITY" vs "community" bugs
- Enables IDE autocomplete across all packages
Current State: BROKEN DEPENDENCY
| Criterion | Status |
|---|---|
| Types defined | ✅ Yes |
| Package structure | ✅ Yes |
| Published to PyPI | ❌ NO |
| Git repository | ❌ NO (no .git folder) |
| Version pinned | 0.1.0 |
SECTION B — Contents
Billing Types
from krl_types.billing import LicenseTier, BillingCycle
class LicenseTier(str, Enum):
COMMUNITY = "community"
PROFESSIONAL = "professional"
ENTERPRISE = "enterprise"
class BillingCycle(str, Enum):
MONTHLY = "monthly"
ANNUAL = "annual"
Connector Types
from krl_types.connectors import ConnectorTier
class ConnectorTier(str, Enum):
COMMUNITY = "community"
PROFESSIONAL = "professional"
ENTERPRISE = "enterprise"
SECTION C — Engineering Notes
Package Structure
krl-types/
├── src/
│ └── krl_types/
│ ├── __init__.py
│ ├── billing.py # Billing enums
│ ├── connectors.py # Connector enums
│ └── models.py # Model enums
│
├── tests/ # Minimal tests
├── pyproject.toml # Package definition
└── README.md # This file
Local Installation
Since this is not on PyPI, install locally:
# From the krl-types directory
pip install -e .
# Or from another package directory
pip install -e ../krl-types
pyproject.toml Fix
Until krl-types is on PyPI, other packages should use:
[project]
dependencies = [
# krl-types @ git+https://github.com/KR-Labs/krl-types.git # When git repo exists
# OR remove dependency and inline types
]
SECTION D — Action Required
Immediate Priority: HIGH
- Create git repository for krl-types
- Publish to PyPI (or private index)
- Update dependent packages to use published version
Owner
- Team: KR-Labs Engineering
- Escalation: engineering@krlabs.dev
Risk If Not Addressed
pip install krl-data-connectorsfailspip install krl-premium-backendmay fail- Customer onboarding blocked
- CI/CD pipelines fail
Last updated: December 14, 2025 — Forensic audit identified CRITICAL deployment blocker
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file krl_types-0.1.0.tar.gz.
File metadata
- Download URL: krl_types-0.1.0.tar.gz
- Upload date:
- Size: 22.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
89eb7617427acf229cb5267d62a0353a9e13dd0b1bf8bed5e4adde42ed5ea1ca
|
|
| MD5 |
c80c3b4a7e494f65efb275273813c47e
|
|
| BLAKE2b-256 |
8c6ea78822042e36c954f365374cb6d2aaea3b13c91caf2907008efaa64e899b
|
File details
Details for the file krl_types-0.1.0-py3-none-any.whl.
File metadata
- Download URL: krl_types-0.1.0-py3-none-any.whl
- Upload date:
- Size: 20.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fb92c1a2e5a533e23652b3775951cee880e12f3f62136c9c3fa9e6cd4dfae251
|
|
| MD5 |
6b54a2f9c9b1a68ccc59be435e6be73b
|
|
| BLAKE2b-256 |
2f30495c510d7ba982094ffb3725ed667e7c627f66a68dee0d071b1df6cd2464
|