cadrumo.application.flows.errors module

Canonical flow-substrate error hierarchy.

Every substrate error inherits from CadrumoError so callers catch the package-wide base class to handle every cadrumo domain error uniformly. The substrate raises typed, translated errors only; raw operator answers never ride in error context.

exception FlowError(message=None, *, context=None, translated_message=None)[source]

Bases: CadrumoError

Base class for every flow-substrate error.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code
exception FlowValidatorRegistryError(message=None, *, context=None, translated_message=None)[source]

Bases: FlowError

Raised on a blank, duplicate, or unknown validator-id registration or lookup.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code
exception FlowNavigationError(message=None, *, context=None, translated_message=None)[source]

Bases: FlowError

Raised when a navigation intent names a page the current state cannot reach.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code
exception FlowAnswerError(message=None, *, context=None, translated_message=None)[source]

Bases: FlowError, CoreValidationError

Raised when an answer intent targets a page that cannot accept it.

Inherits from CoreValidationError to participate in the shared validation catch surface.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code
exception FlowSubmitError(message=None, *, context=None, translated_message=None)[source]

Bases: FlowError

Raised when submission is attempted while the review gate refuses it.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code
exception FlowCheckpointError(message=None, *, context=None, translated_message=None)[source]

Bases: FlowError

Raised when a checkpoint or resume operation cannot complete.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code
exception FlowCopyResolutionError(message=None, *, context=None, translated_message=None)[source]

Bases: FlowError

Raised when a copy reference cannot be resolved against its declared source.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code
exception FlowRunAbandonedError(message=None, *, context=None, translated_message=None)[source]

Bases: FlowError

Raised when the operator abandons a line-mode prompt loop (Ctrl-C).

The line frontend prompts through unsafe_ask so a KeyboardInterrupt surfaces at the frontend boundary as a typed, translated refusal instead of being swallowed into a silent re-prompt with no cancel path. Context carries flow metadata only — never a raw operator answer.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code
exception FlowUnsupportedConsoleError(message=None, *, context=None, translated_message=None)[source]

Bases: FlowError

Raised when the host terminal cannot host an interactive flow frontend.

Surfaces when prompt_toolkit rejects the active TTY (typically NoConsoleScreenBufferError under git-bash on Windows) or stdin is not a TTY. Frontends catch this at their boundary and surface a translated operator-facing refusal, never a raw traceback.

Parameters:
  • message (str | None)

  • context (Mapping[str, object] | None)

  • translated_message (str | None)

Return type:

None

code