//! Input contracts for final `/debug/schema` report-output assembly.
//!
//! This module defines typed payloads consumed by `debug_report_output` and
//! `debug_report_output_assembly` so handoff code can forward one field-named
//! contract instead of relying on positional argument ordering.
use super::debug_contracts::LoggingSchemaDebugSummary;
use super::debug_evaluation::ExpectedTablesEvaluation;
use super::debug_observed_tables::ObservedTablesMap;
use super::debug_still_needed::LoggingSchemaDebugStillNeeded;
/// Typed input payload consumed by final report-output facade and assembly policy.
pub struct LoggingSchemaDebugReportOutputInput {
/// Logging-client identifier used to scope diagnostics.
pub logging_client: String,
/// Precomputed top-level report summary.
pub summary: LoggingSchemaDebugSummary,
/// Expected-table evaluation rows ready for output projection.
pub evaluation: ExpectedTablesEvaluation,
/// Missing-table, missing-column, and relation-mismatch diagnostics.
pub still_needed: LoggingSchemaDebugStillNeeded,
/// Observed table map collected from schema snapshot rows.
pub observed_map: ObservedTablesMap,
}