Core API Reference
qualink.core — Core classes, enums, and data structures.
from qualink.core import (
Constraint, ConstraintMetadata, ConstraintResult, ConstraintStatus,
Level,
LoggingMixin, configure_logging, get_logger,
CheckStatus, ValidationIssue, ValidationMetrics, ValidationReport, ValidationResult,
ValidationSuite,
)
qualink.core.constraint
class ConstraintStatus(Enum)
Outcome of evaluating a single constraint.
| Member | Value |
|---|---|
ConstraintStatus.SUCCESS |
'success' |
ConstraintStatus.FAILURE |
'failure' |
ConstraintStatus.SKIPPED |
'skipped' |
class ConstraintMetadata
Descriptive metadata attached to a constraint.
| Field | Type | Default |
|---|---|---|
name |
str |
required |
description |
str |
"" |
column |
`str | None` |
extra |
dict[str, Any] |
field(default_factory=dict) |
class ConstraintResult
The result produced after evaluating a constraint.
| Field | Type | Default |
|---|---|---|
status |
ConstraintStatus |
required |
metric |
`float | None` |
message |
str |
"" |
constraint_name |
str |
"" |
Properties:
is_success: bool
class Constraint(LoggingMixin, ABC)
Abstract base class that every validation constraint must implement.
Evaluate this constraint against table_name registered in ctx.
Name of this constraint.
Optional rich metadata.
qualink.core.level
class Level(IntEnum)
The severity level of a validation check.
Usage Guidelines
- Error - critical data quality issues that prevent processing (missing required fields, PK violations, integrity violations).
- Warning - issues that should be investigated but don't block processing (below-threshold quality, unusual patterns).
- Info - informational metrics and observations (row counts, profiling results, performance benchmarks).
| Member | Value |
|---|---|
Level.INFO |
0 |
Level.WARNING |
1 |
Level.ERROR |
2 |
qualink.core.logging_mixin
class LoggingMixin
Mixin that provides a per-class ``self.logger`` cached property.
logging.getLogger("qualink.constraints").setLevel(logging.DEBUG)
Properties:
logger: logging.Logger
Attach a StreamHandler to the qualink root logger.
Safe to call more than once — handlers are not duplicated.
Return a logger under the qualink namespace.
qualink.core.result
class CheckStatus
Outcome status after evaluating a check group.
class ValidationIssue
A single issue found during validation.
| Field | Type | Default |
|---|---|---|
check_name |
str |
required |
constraint_name |
str |
required |
level |
Level |
required |
message |
str |
required |
metric |
`float | None` |
column |
`str | None` |
description |
str |
"" |
metadata_extra |
dict[str, Any] |
field(default_factory=dict) |
class ValidationMetrics
Aggregate metrics for a validation run.
| Field | Type | Default |
|---|---|---|
total_checks |
int |
0 |
total_constraints |
int |
0 |
passed |
int |
0 |
failed |
int |
0 |
skipped |
int |
0 |
error_count |
int |
0 |
warning_count |
int |
0 |
execution_time_ms |
int |
0 |
custom_metrics |
dict[str, float] |
field(default_factory=dict) |
Properties:
pass_rate: float
class ValidationReport
Detailed report produced by a validation run.
| Field | Type | Default |
|---|---|---|
suite_name |
str |
required |
metrics |
ValidationMetrics |
field(default_factory=ValidationMetrics) |
check_results |
dict[str, list[ConstraintResult]] |
field(default_factory=dict) |
issues |
list[ValidationIssue] |
field(default_factory=list) |
class ValidationResult
Top-level outcome of running a ValidationSuite.
| Field | Type | Default |
|---|---|---|
success |
bool |
required |
status |
str |
required |
report |
ValidationReport |
required |
qualink.core.suite
class ValidationSuite(LoggingMixin)
Entry point for running data-quality checks.
| Param | Type | Default |
|---|---|---|
name |
str |
"" |
description |
`str | None` |
ctx |
`SessionContext | None` |
table_name |
str |
'data' |
checks |
`list[Check] | None` |
run_parallel |
bool |
False |
Create a builder for constructing a validation suite.
Begin a validation run against table_name in the DataFusion ctx.
Execute a built suite with its stored configuration.
class ValidationSuiteBuilder(LoggingMixin)
Fluent builder that collects checks and runs them via DataFusion.
| Param | Type | Default |
|---|---|---|
name |
str |
'ValidationRun' |
Enable or disable concurrent check execution (default: enabled).
Execute all checks against the DataFusion context.
Return a configured ValidationSuite (for deferred execution).