finprint.codes
module finprint
provisional (not yet in the spec) G-DATA-06 is in the gate registry but not yet in the specification’s gate catalogue, so it is not normative.
Note codes a recipe can carry (blueprint docs/poc/TRANSFORM-RECIPES.md sections 3 to 6).
The same codes are registered in ump_spec’s error_codes.yaml (a drift test in each package checks it;
this package never imports ump_spec). Every code is a warning or an information note: none of them stops
anything on the analyst’s machine. apps/data may turn RECIPE_NOT_REPRODUCED and
RECIPE_OUTPUT_MISMATCH into stops under strict mode (gate G-DATA-06), and TRANSIENT_DATA is a refusal to write rows.
APPLY_CODES are what finprint.apply returns when it runs a recipe on new data: refusals (nothing ran to the
end and nothing was written) and one warning. They are registered the same way and never go into a recipe.
Classes
Section titled “Classes”NoteCode
Section titled “NoteCode”class
class NoteCodeFields
| Name | Type | Default | Description |
|---|---|---|---|
code | str | ||
severity | Severity | ||
meaning | str |
Methods and properties (1)
init constructor
NoteCode(self, code: str, severity: Severity, meaning: str) -> NoneSource: packages/finprint/src/finprint/codes.py, line 20
ApplyCode
Section titled “ApplyCode”class
class ApplyCodeFields
| Name | Type | Default | Description |
|---|---|---|---|
code | str | ||
outcome | Literal['refused', 'warn'] | ||
meaning | str |
Methods and properties (1)
init constructor
ApplyCode(self, code: str, outcome: Literal['refused', 'warn'], meaning: str) -> NoneSource: packages/finprint/src/finprint/codes.py, line 63
Constants
Section titled “Constants”| Name | Type | Value | Description |
|---|---|---|---|
Severity | Literal['info', 'warn'] | ||
NOTE_CODES | dict[str, NoteCode] | {c.code: c for c in (NoteCode('RECIPE_PARTIAL', 'warn', 'A tracked frame chan... | |
CODES | tuple[str, ...] | tuple(NOTE_CODES) | |
NoteCodeName | Literal['RECIPE_PARTIAL', 'RECIPE_UNVERIFIED', 'RECIPE_NOT_REPRODUCED', 'RECI... | ||
APPLY_CODES | dict[str, ApplyCode] | {c.code: c for c in (ApplyCode('INPUTS_UNBOUND', 'refused', 'A recipe input w... |