cadrumo.application.diagnostics_ports module

Application-owned capabilities for secure-object diagnostics.

Diagnostic reports need a small read/mutation surface over secure objects and one way to classify the expected cold-start session failure. The application owns these contracts; the storage adapter translates its records and errors before binding them at an executable composition root.

class DiagnosticSecureObjectNamespace(**data)[source]

Bases: BaseModel

Application DTO for one secure-object namespace integrity result.

Parameters:

data (Any)

namespace: str
readable: NonNegativeInt
unreadable: NonNegativeInt
class DiagnosticSecureObjectRepository(*args, **kwargs)[source]

Bases: Protocol

Read and quarantine capabilities required by diagnostic reports.

list_namespaces()[source]

Return the populated secure-object namespaces.

Return type:

tuple[str, ...]

probe_namespace_integrity(namespace)[source]

Return translated decryptability counts for namespace.

Return type:

DiagnosticSecureObjectNamespace

Parameters:

namespace (str)

quarantine_unreadable_rows()[source]

Move unreadable rows and return translated namespace counts.

Return type:

tuple[DiagnosticSecureObjectNamespace, ...]

class DiagnosticSessionFailureClassifier(*args, **kwargs)[source]

Bases: Protocol

Classify storage failures without exposing adapter exception types.

class DiagnosticsPorts(secure_object_repository, session_failure_classifier)[source]

Bases: object

Required secure-object capabilities for one diagnostics invocation.

Parameters:
secure_object_repository: DiagnosticSecureObjectRepository
session_failure_classifier: DiagnosticSessionFailureClassifier