Shared library for OpenShell (OSAM/OSA/OSAC)
Project description
OpenShell Shared
Librería compartida usada por los componentes de OpenShell (OSAM, OSA, OSAC).
Contiene:
- identity/ — Identidad lógica de las entidades (
EntityIdentity,Identification) y su persistencia (store.py). - cryptography/ — Primitivas Ed25519 (
keys.py,signatures.py), identidad criptográfica (identity.py) y certificados (certificate.py).encoding.pyyutils.pyson módulos reservados para trabajo futuro (actualmente sin implementación). - protocols/negotiation/ — Protocolo de challenge-response (
challenge.py) y sus modelos. - domain/ — Modelo de dominio (
Domain,Membership,Permission) y políticas de autorización.policies.pyes un stub pendiente de implementación real. - standards/ — Enumeraciones y contratos compartidos entre componentes: tipos de entidad, certificados, eventos, roles, permisos, passports y transportes.
- modules/shell/ — Implementación del subsistema de shell remoto (cliente, servidor, sesión y protocolo de framing) usado por OSA y OSAC.
- api/manager/v1/ — SDK oficial async para consumir la API HTTP de OSAM (
OSAMClient). Todo el sistema (OSAC, OSA, herramientas internas) debe consumir OSAM exclusivamente a través de este paquete; ningún otro componente debe importarhttpx/requestsdirectamente para hablar con OSAM.
Notas de la fusión (v2.1.0)
Esta versión unifica dos ramas que habían divergido:
- Se conserva la estructura de empaquetado (
pyproject.toml, layoutsrc) y los módulosdomain/ystandards/, introducidos en la rama de refactor v2. - Se restaura
modules/shell/y se sustituye el cliente HTTP monolítico (api/manager/1/osam_client.py) por el SDK modular (api/manager/v1/), que es la versión vigente y más completa (excepciones tipadas, dataclasses, suite de tests con mock transport).
Deuda técnica pendiente identificada durante la fusión
domain/permissions.pyystandards/permissions/types.pydefinen dos enumsPermissiondistintos y no compatibles entre sí (AGENT_READ/AGENT_EXECUTE/DOMAIN_ADMIN/PROXY_USEvs.DOMAIN_READ/DOMAIN_WRITE/ENTITY_REGISTER/ENTITY_REVOKE/PROXY_USE). No se han unificado automáticamente porque implica una decisión de diseño (cuál es la fuente de verdad de permisos). Requiere consolidación manual.cryptography/encoding.py,cryptography/utils.pyydomain/policies.pyson placeholders vacíos o triviales (Policy.evaluatesiempre retornaTrue). No implementan lógica real.- El SDK (
api/manager/v1/) no reexpone los helpers de alto nivelfull_connect/open_and_linkque existían en el cliente monolítico anterior (composición de autenticación + túnel + sesión en una sola llamada). Si se siguen usando, conviene reimplementarlos como métodos de conveniencia sobreOSAMClient.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
openshell_shared-0.1.2.tar.gz
(34.3 kB
view details)
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