Skip to main content

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.py y utils.py son 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.py es 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 importar httpx/requests directamente 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, layout src) y los módulos domain/ y standards/, 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

  1. domain/permissions.py y standards/permissions/types.py definen dos enums Permission distintos y no compatibles entre sí (AGENT_READ/AGENT_EXECUTE/DOMAIN_ADMIN/PROXY_USE vs. 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.
  2. cryptography/encoding.py, cryptography/utils.py y domain/policies.py son placeholders vacíos o triviales (Policy.evaluate siempre retorna True). No implementan lógica real.
  3. El SDK (api/manager/v1/) no reexpone los helpers de alto nivel full_connect / open_and_link que 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 sobre OSAMClient.

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-2.1.23.tar.gz (52.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openshell_shared-2.1.23-py3-none-any.whl (74.3 kB view details)

Uploaded Python 3

File details

Details for the file openshell_shared-2.1.23.tar.gz.

File metadata

  • Download URL: openshell_shared-2.1.23.tar.gz
  • Upload date:
  • Size: 52.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for openshell_shared-2.1.23.tar.gz
Algorithm Hash digest
SHA256 546df9cea9f8c7fe699cc17402389f1a85a5e81c00b68bdb2f4ffbe618c90d5c
MD5 37afed2355b63f2a441d1c7921cdb47e
BLAKE2b-256 229164dc9ec33695d67e7d9fa82bae85d90fd75ce50f8cccf581212b94958cb1

See more details on using hashes here.

File details

Details for the file openshell_shared-2.1.23-py3-none-any.whl.

File metadata

File hashes

Hashes for openshell_shared-2.1.23-py3-none-any.whl
Algorithm Hash digest
SHA256 3b8d2aeee34103c8814a017afab5419581d346720c58ba13795c0991172b7b07
MD5 3c6f3e98f1e5557245ce1865d6e36e90
BLAKE2b-256 84d4eb79ae0cc6bb4f99fe80f8add2ff4b0692c0ff45ccd3330cdeed3d39fe08

See more details on using hashes here.

Release history Release notifications | RSS feed

5.0.0

2 files

4.5.0

2 files

4.4.0

2 files

4.3.0

2 files

4.0.1

2 files

3.0.0

2 files

2.1.24

2 files

This release

2.1.23 This release

2 files

2.1.21

2 files

2.1.12

2 files

2.1.10

2 files

0.2.1

2 files

0.2.0

2 files

0.1.13

2 files

0.1.10

2 files

0.1.9

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page