Skip to main content

fallow_output/
lib.rs

1//! Reusable output contract types for fallow.
2//!
3//! This crate owns stable report DTOs that are not tied to CLI rendering.
4//! Higher-level output assemblers live above this crate in `fallow-api` or the
5//! CLI, while this crate remains the shared typed boundary those builders and
6//! non-CLI consumers can use. Shared selectors such as `OutputFormat` stay in
7//! `fallow-types`; this crate re-exports only the selectors needed to keep
8//! output builders on one contract surface.
9#![warn(missing_docs)]
10#![cfg_attr(
11    test,
12    allow(
13        clippy::expect_used,
14        reason = "tests use expect to keep serialization assertions concise"
15    )
16)]
17
18mod analysis_sarif;
19mod audit_branching;
20mod audit_brief;
21mod audit_decision_surface;
22mod audit_focus;
23mod audit_ownership;
24mod audit_render;
25mod audit_routing;
26mod audit_walkthrough;
27mod audit_weakening;
28mod baseline_staleness;
29mod check;
30mod ci_output;
31mod codeclimate;
32mod coverage_envelopes;
33mod dead_code_sarif;
34mod diff;
35mod doctor;
36mod dupes;
37mod entry_weight;
38mod error_envelope;
39mod feature_flags;
40mod finding_id_query;
41mod fix;
42mod gate_outcomes;
43mod health;
44mod health_actions;
45mod health_coverage;
46mod health_coverage_gaps;
47mod health_coverage_intelligence;
48mod health_css;
49mod health_diagnostics;
50mod health_findings;
51mod health_grouped;
52mod health_report;
53mod health_runtime_coverage;
54mod health_scores;
55mod health_targets;
56mod health_trends;
57mod health_vital_signs;
58mod impact;
59mod inspect_envelopes;
60mod issue_contract;
61mod json_paths;
62mod list_envelopes;
63mod next_steps;
64mod package_baselines;
65mod pr_comment_envelope;
66mod pr_comment_post_plan;
67mod pr_decision;
68mod pr_details;
69mod pr_status;
70mod pr_summary;
71mod report_contract;
72mod request_outcomes;
73mod review_envelopes;
74mod root_envelopes;
75mod sarif;
76mod saved_health;
77mod security;
78mod similar_code;
79mod static_str;
80mod suppressions;
81mod trace_envelopes;
82mod type_aware_envelopes;
83mod walkthrough_render;
84
85pub use analysis_sarif::{
86    annotate_sarif_results, build_duplication_sarif, build_grouped_duplication_sarif,
87    build_health_sarif,
88};
89pub use audit_branching::{
90    BranchingCognitive, BranchingFileDelta, BranchingMetric, BranchingReport, BranchingScope,
91    BranchingSnapshot, CognitiveAttribution, DEFAULT_BRANCHING_TOLERANCE, SplitInPlace,
92};
93pub use audit_brief::{
94    AFFECTED_DIR_CAP, AFFECTED_SAMPLE_CAP, AffectedDirectory, CoordinationGapFact, DiffTriage,
95    GraphFacts, ImpactClosureFacts, PartitionFacts, REVIEW_BRIEF_SCHEMA_VERSION, ReviewBriefHeader,
96    ReviewBriefOutput, ReviewBriefSchemaVersion, ReviewBriefSubtractSections,
97    ReviewBriefWireOutput, ReviewDeltas, ReviewEffort, ReviewUnitFact, RiskClass,
98    StandardReviewBriefOutput, build_review_brief_json_output,
99    serialize_decision_surface_json_output, serialize_review_brief_json_output,
100    serialize_walkthrough_guide_json_output, serialize_walkthrough_validation_json_output,
101};
102pub use audit_decision_surface::{
103    DECISION_SURFACE_SCHEMA_VERSION, Decision, DecisionAction, DecisionActionType,
104    DecisionCategory, DecisionSurface, DecisionSurfaceOutput, DecisionSurfaceSchemaVersion,
105    DecisionWithActions, TruncationNote, build_decision_surface_output, suppress_comment,
106};
107pub use audit_focus::{ConfidenceFlag, FocusLabel, FocusMap, FocusScore, FocusUnit};
108pub use audit_ownership::{OWNER_GROUP_CAP, OwnerGroupFact, OwnershipFacts, OwnershipSliceFact};
109pub use audit_render::{
110    AuditDisplayGate, AuditDisplaySeverity, AuditStylingContextLabelInput,
111    styling_audit_context_label, styling_candidate_count,
112};
113pub use audit_routing::{RoutingFacts, RoutingUnit};
114pub use audit_walkthrough::{
115    AcceptedJudgment, AgentJudgment, AgentSchema, AgentWalkthrough, ChangeAnchor, DirectionUnit,
116    INJECTION_NOTE, JUDGMENT_ACTIONS, JUDGMENT_CONCERNS, RejectedJudgment, ReviewDirection,
117    StandardWalkthroughGuide, TestAdjacency, WalkthroughGuide, WalkthroughValidation, agent_schema,
118    is_judgment_action,
119};
120pub use audit_weakening::{WeakeningKind, WeakeningSignal};
121pub use baseline_staleness::{
122    BaselineScopeReasons, BaselineStaleness, BaselineStalenessAdvisory, ScopeReason,
123};
124pub use check::{
125    CHECK_SCHEMA_VERSION, CheckGroupedEntry, CheckGroupedOutput, CheckOutput, CheckOutputInput,
126    GroupByMode, apply_config_fixable_to_duplicate_exports, build_check_output,
127    harmonize_dead_code_health_suppress_line_actions, harmonize_multi_kind_suppress_line_actions,
128    serialize_check_grouped_json_output, serialize_check_json_output,
129};
130pub use ci_output::{
131    CiIssue, CiLocation, CiProvider, GroupedReviewIssues, MARKER_PREFIX_V3, MARKER_SUFFIX_V3,
132    MAX_COMMENT_BODY_BYTES, PROJECT_LEVEL_RULE_IDS, PrCommentRenderInput, ReviewCommentRenderInput,
133    ReviewEnvelopeRenderInput, ReviewEnvelopeRenderResult, ReviewEnvelopeTruncation,
134    ReviewGitlabDiffRefs, apply_path_prefix, command_title, github_check_conclusion,
135    group_review_issues_by_path_line, is_project_level_rule, issues_from_codeclimate,
136    issues_from_codeclimate_issues, markdown_code_span, markdown_table_code_span,
137    markdown_table_text, render_pr_comment, render_pr_comment_with_verdict,
138    render_review_comment_for_group, render_review_envelope,
139    render_review_envelope_with_conclusion, render_scoped_review_envelope,
140    render_scoped_review_envelope_with_conclusion, summary_label,
141};
142pub use codeclimate::{
143    CodeClimateAnnotationField, CodeClimateIssue, CodeClimateIssueInput, CodeClimateIssueKind,
144    CodeClimateLines, CodeClimateLocation, CodeClimateOutput, CodeClimateSeverity,
145    annotate_codeclimate_issues, build_codeclimate_issue, codeclimate_fingerprint_hash,
146    codeclimate_issues_to_value,
147};
148pub use coverage_envelopes::{
149    CoverageAnalyzeOutput, CoverageAnalyzeSchemaVersion, CoverageSetupFileToEdit,
150    CoverageSetupFramework, CoverageSetupMember, CoverageSetupOutput, CoverageSetupPackageManager,
151    CoverageSetupRuntimeTarget, CoverageSetupSchemaVersion, CoverageSetupSnippet,
152    build_coverage_analyze_output, serialize_coverage_analyze_json_output,
153    serialize_coverage_setup_json_output,
154};
155pub use dead_code_sarif::build_dead_code_sarif;
156pub use diff::{
157    DiffIndex, MAX_ADDED_LINES, MAX_DIFF_BYTES, parse_new_hunk_start, relative_to_diff_path,
158};
159pub use doctor::{
160    DOCTOR_SCHEMA_VERSION, DoctorCheck, DoctorCheckCategory, DoctorCheckId, DoctorCheckStatus,
161    DoctorOutput, DoctorRemediation, DoctorStatus, DoctorSummary, serialize_doctor_json_output,
162};
163pub use dupes::{
164    CloneFamilyAction, CloneFamilyActionType, CloneGroupAction, CloneGroupActionType,
165    DUPES_PROGRAMMATIC_SCHEMA_VERSION, DUPES_SCHEMA_VERSION, DupesOutput, DupesOutputInput,
166    build_dupes_output, clone_family_actions, clone_group_actions, serialize_dupes_json_output,
167};
168pub use entry_weight::{
169    DominatingImportOutput, EagerPackageOutput, EntryWeightDelta, EntryWeightListing,
170    EntryWeightOutput, EntryWeightRegression, EntryWeightUnit,
171};
172pub use error_envelope::ErrorOutput;
173pub use fallow_types::envelope;
174pub use fallow_types::output;
175pub use fallow_types::output_dead_code;
176pub use fallow_types::output_format::OutputFormat;
177pub use fallow_types::output_health;
178pub use feature_flags::{
179    FEATURE_FLAGS_SCHEMA_VERSION, FeatureFlagAction, FeatureFlagActionType, FeatureFlagConfidence,
180    FeatureFlagDeadCodeOverlap, FeatureFlagFinding, FeatureFlagKind, FeatureFlagsConfidenceMeta,
181    FeatureFlagsKindMeta, FeatureFlagsMeta, FeatureFlagsMetaDetails, FeatureFlagsOutput,
182    FeatureFlagsOutputInput, build_feature_flags_output, feature_flags_meta,
183    serialize_feature_flags_json_output,
184};
185pub use finding_id_query::{FindingIdQuery, FindingIdQueryReason};
186pub use fix::{FixJsonOutput, FixJsonOutputInput, count_applied_fixes, serialize_fix_json_output};
187pub use gate_outcomes::{GateFile, GateName, GateOutcome, GateOutcomes, GateStatus};
188pub use health::{
189    HEALTH_SCHEMA_VERSION, HealthJsonOutputInput, HealthOutput, HealthOutputInput,
190    serialize_health_json_output,
191};
192pub use health_actions::HealthActionsMeta;
193pub use health_coverage::{CoverageInputFormat, CoverageModel};
194pub use health_coverage_gaps::{
195    CoverageGapSummary, CoverageGaps, UntestedExport, UntestedExportFinding, UntestedFile,
196    UntestedFileFinding,
197};
198pub use health_coverage_intelligence::{
199    CoverageIntelligenceAction, CoverageIntelligenceConfidence, CoverageIntelligenceEvidence,
200    CoverageIntelligenceFinding, CoverageIntelligenceMatchConfidence,
201    CoverageIntelligenceRecommendation, CoverageIntelligenceReport,
202    CoverageIntelligenceSchemaVersion, CoverageIntelligenceSignal, CoverageIntelligenceSummary,
203    CoverageIntelligenceVerdict,
204};
205pub use health_css::{
206    ConsumerKind, CssAnalyticsReport, CssAnalyticsSummary, CssBlockOccurrence, CssCandidateAction,
207    CssCandidateActionType, CssDuplicateBlock, CssFileAnalytics, CssNotationConsistency,
208    CssNotationCount, CvaDuplicateVariantBlock, CvaVariantTokenDrift, NearDuplicateThemeToken,
209    NearestStylingToken, RawStyleValue, ScopedUnusedClasses, StylingAgentDisposition,
210    StylingFinding, StylingFindingConfidence, StylingFindingSeverity, TOKEN_CONSUMER_SAMPLE_CAP,
211    TailwindArbitraryValue, TokenConsumerLocation, TokenConsumers, UndefinedKeyframes,
212    UnreferencedCssClass, UnreferencedKeyframes, UnresolvedClassReference, UnusedAtRule,
213    UnusedAtRuleKind, UnusedFontFace, UnusedThemeToken,
214};
215pub use health_diagnostics::{
216    FrameworkHealthDetector, FrameworkHealthDetectorStatus, FrameworkHealthDiagnostics,
217    HealthTimings,
218};
219pub use health_findings::{
220    HealthActionContext, HealthActionOptions, HealthFinding, HotspotFinding,
221    RefactoringTargetFinding, SFC_TEMPLATE_SUPPRESS_COMMENT, build_health_finding_actions,
222};
223pub use health_grouped::{
224    GroupTrendStatus, HealthGroup, HealthGrouping, group_score_delta_label,
225    health_groups_in_display_order,
226};
227pub use health_report::{HealthReport, HealthSection};
228pub use health_runtime_coverage::{
229    OPTIMIZATION_TARGET_UNMATCHED_WARNING, RUNTIME_STALE_AFTER_DAYS, RuntimeCoverageAction,
230    RuntimeCoverageBlastRadiusEntry, RuntimeCoverageCaptureQuality, RuntimeCoverageConfidence,
231    RuntimeCoverageCostBasis, RuntimeCoverageDataSource, RuntimeCoverageDiscriminators,
232    RuntimeCoverageEvidence, RuntimeCoverageFinding, RuntimeCoverageHotPath,
233    RuntimeCoverageImportanceEntry, RuntimeCoverageMessage, RuntimeCoverageOptimizationTarget,
234    RuntimeCoverageProvenance, RuntimeCoverageReport, RuntimeCoverageReportVerdict,
235    RuntimeCoverageRiskBand, RuntimeCoverageSchemaVersion, RuntimeCoverageSignal,
236    RuntimeCoverageSummary, RuntimeCoverageVerdict, RuntimeCoverageWatermark,
237};
238pub use health_scores::{
239    COGNITIVE_EXTRACTION_THRESHOLD, ClockProvenance, ClockSource, ComplexityViolation,
240    ComponentRollup, ContributorEntry, ContributorIdentifierFormat, CoverageSource,
241    CoverageSourceConsistency, CoverageTier, DEFAULT_COGNITIVE_CRITICAL, DEFAULT_COGNITIVE_HIGH,
242    DEFAULT_CYCLOMATIC_CRITICAL, DEFAULT_CYCLOMATIC_HIGH, ExceededThreshold, FileHealthScore,
243    FindingSeverity, HEALTH_SCORE_FORMULA_VERSION, HOTSPOT_SCORE_THRESHOLD,
244    HealthConfiguredThresholds, HealthEffectiveThresholds, HealthScore, HealthScorePenalties,
245    HealthSummary, HotspotEntry, HotspotSummary, LargeFunctionEntry, MI_DENSITY_MIN_LINES,
246    OwnershipMetrics, OwnershipState, ReactHookProfile, STYLING_HEALTH_FORMULA_VERSION,
247    StylingHealth, StylingHealthConfidence, StylingHealthPenalties, ThresholdOverrideDimension,
248    ThresholdOverrideMetrics, ThresholdOverrideState, ThresholdOverrideStatus, ThresholdSource,
249    compute_finding_severity, letter_grade, summarize_coverage_source_consistency,
250};
251pub use health_targets::{
252    CloneSiblingEvidence, Confidence, ContributingFactor, DirectCallerEvidence,
253    DirectCallerSymbolEvidence, EffortEstimate, EvidenceFunction, RecommendationCategory,
254    RefactoringTarget, TargetEvidence, TargetThresholds,
255};
256pub use health_trends::{
257    HealthTrend, TrendCount, TrendDirection, TrendMetric, TrendPoint, health_score_comparison_note,
258};
259pub use health_vital_signs::{
260    CyclomaticPopulation, CyclomaticUnitPopulation, GroupSnapshot, RenderFanInTopComponent,
261    RiskProfile, SNAPSHOT_SCHEMA_VERSION, SnapshotGrouping, VitalSigns, VitalSignsCounts,
262    VitalSignsSnapshot,
263};
264pub use impact::{
265    ContainmentEvent, CrossRepoImpactReport, CrossRepoImpactSchemaVersion, CrossRepoProjectEntry,
266    CrossRepoTotals, EnabledSource, GateRunCounts, ImpactCounts, ImpactReport,
267    ImpactReportSchemaVersion, ImpactTrendDirection, ResolutionEvent, TrendSummary,
268    serialize_cross_repo_impact_json_output, serialize_impact_json_output,
269};
270pub use inspect_envelopes::{
271    ExplainOutput, InspectEvidence, InspectEvidenceScope, InspectEvidenceSection,
272    InspectFileIdentity, InspectIdentity, InspectOutput, InspectSectionStatus,
273    InspectSymbolIdentity, InspectTargetDescriptor, serialize_explain_json_output,
274    serialize_inspect_json_output,
275};
276pub use issue_contract::{
277    ACTIONS_AUTO_FIXABLE_FIELD_DEFINITION, ACTIONS_FIELD_DEFINITION, CHECK_DOCS,
278    CODECLIMATE_RESULT_CODES, IssueOutputContract, TsAliasMeta, check_meta,
279    issue_output_contract_by_code, issue_output_contracts, rule_docs_url,
280};
281pub use json_paths::{normalize_uri, strip_root_prefix};
282pub use list_envelopes::{
283    BoundariesListLogicalGroup, BoundariesListRule, BoundariesListZone, BoundariesListing,
284    ListBoundariesOutput, ListEntryPointOutput, ListOutput, ListPluginOutput, WorkspaceInfo,
285    WorkspacesOutput, serialize_list_boundaries_json_output, serialize_list_workspaces_json_output,
286};
287pub use next_steps::{
288    AuditNextStepsInput, BaselineRecheckInput, CombinedNextStepsInput, DeadCodeNextStepsInput,
289    DupesNextStepsInput, HealthNextStepsInput, ImpactDigestCounts, TraceUnusedExportInput,
290    build_audit_next_steps, build_audit_next_steps_input, build_combined_next_steps,
291    build_dead_code_next_steps, build_dupes_next_steps, build_health_next_steps,
292    build_health_next_steps_input, impact_digest_summary, trace_unused_export_input,
293};
294pub use package_baselines::PackageBaselineStatus;
295pub use pr_comment_envelope::{PrCommentEnvelope, PrCommentTruncation};
296pub use pr_comment_post_plan::{
297    ExistingPrComment, PrCommentPostAction, PrCommentPostPlan, PrCommentPostPlanInput,
298    PrCommentPostSkipReason, plan_pr_comment_post,
299};
300pub use pr_decision::{
301    PR_DECISION_SCHEMA, PrDecisionAnnotation, PrDecisionAnnotationLevel, PrDecisionConclusion,
302    PrDecisionDetails, PrDecisionGate, PrDecisionSurface,
303};
304pub use pr_details::{PR_DETAILS_SCHEMA, PrDetailsArtifact, PrDetailsRow, PrDetailsSection};
305pub use pr_status::{PrStatusContext, PrStatusMode, pr_status_contexts_with_mode};
306pub use pr_summary::{
307    PrCommentLayout, PrSummaryArea, PrSummaryFinding, PrSummaryInput, PrSummaryScope,
308    PrSummaryStatus, render_pr_summary,
309};
310pub use report_contract::{
311    COVERAGE_ANALYZE_DOCS, COVERAGE_SETUP_DOCS, DUPES_DOCS, HEALTH_DOCS, SecurityRuleMeta,
312    coverage_analyze_meta, coverage_setup_meta, dupes_meta, health_meta, security_meta,
313};
314pub use request_outcomes::{RequestName, RequestOutcome, RequestOutcomes, RequestStatus};
315pub use review_envelopes::{
316    GitHubReviewComment, GitHubReviewSide, GitLabReviewComment, GitLabReviewPosition,
317    GitLabReviewPositionType, MARKER_REGEX_V3, ReviewCheckConclusion, ReviewComment,
318    ReviewEnvelopeEvent, ReviewEnvelopeMeta, ReviewEnvelopeOutput, ReviewEnvelopeSchema,
319    ReviewEnvelopeSummary, ReviewEnvelopeWireOutput, ReviewId, ReviewProvider,
320    ReviewReconcileOutput, ReviewReconcileSchema, body_matches_review_id, is_false,
321    parse_review_id_marker, review_id_marker, serialize_review_envelope_json_output,
322    serialize_review_reconcile_json_output, serialize_scoped_review_envelope_json_output,
323    validate_review_body_scope,
324};
325pub use root_envelopes::{
326    AUDIT_SCHEMA_VERSION, AuditCommand, AuditOutput, COMBINED_SCHEMA_VERSION, CombinedMeta,
327    CombinedOutput, FallowOutput, attach_telemetry_meta, serialize_audit_json_output,
328    serialize_combined_json_output, serialize_json_root_output, serialize_named_json_output,
329};
330pub use sarif::{
331    GHAS_SARIF_FINGERPRINT_KEY, SARIF_FINDING_ID_KEY, SARIF_FINGERPRINT_KEY, SarifDocumentInput,
332    SarifFindingFields, SarifFindingInput, SarifResultInput, SarifRuleInput,
333    SarifSourceSnippetCache, append_sarif_findings, build_sarif_document, build_sarif_result,
334    build_sarif_result_with_snippet, build_sarif_rule, ensure_unique_result_fingerprints,
335    sarif_finding_fingerprint,
336};
337pub use saved_health::health_report_from_saved_value;
338pub use security::{
339    SECURITY_SCHEMA_VERSION, SecurityBlindSpotFile, SecurityBlindSpotGroup,
340    SecurityBlindSpotsOutput, SecurityBlindSpotsSchemaVersion, SecurityBlindSpotsSummary,
341    SecurityGate, SecurityGateVerdict, SecurityOutput, SecurityOutputConfig,
342    SecurityOutputRulesConfig, SecurityReachabilityCounts, SecurityRuleSeverityConfig,
343    SecurityRuntimeStateCounts, SecuritySchemaVersion, SecuritySeverityCounts, SecuritySummary,
344    SecuritySummaryOutput, SecuritySurvivor, SecuritySurvivorsOutput,
345    SecuritySurvivorsSchemaVersion, SecuritySurvivorsSummary, SecurityUnresolvedCalleeDiagnostics,
346    SecurityUnresolvedCalleeReasonCount, SecurityUnresolvedCalleeSample,
347    SecurityUnresolvedCalleeTopFile, SecurityVerifierVerdict, SecurityVerifierVerdictStatus,
348    serialize_security_blind_spots_json_output, serialize_security_json_output,
349    serialize_security_summary_json_output, serialize_security_survivors_json_output,
350    validate_saved_security_envelope,
351};
352pub use similar_code::{
353    SIMILAR_CODE_CACHE_CLEAR_SCHEMA_VERSION, SIMILAR_CODE_INSPECT_SCHEMA_VERSION,
354    SIMILAR_CODE_REVIEW_SCHEMA_VERSION, SIMILAR_CODE_SCHEMA_VERSION,
355    SIMILAR_CODE_STATUS_SCHEMA_VERSION, SimilarCodeAction, SimilarCodeActionType,
356    SimilarCodeCacheClearOutput, SimilarCodeCacheClearSchemaVersion, SimilarCodeCacheStatus,
357    SimilarCodeCacheSummary, SimilarCodeCandidate, SimilarCodeCandidateSnapshot,
358    SimilarCodeCompletion, SimilarCodeCompletionStatus, SimilarCodeDiagnostic,
359    SimilarCodeDiagnosticDomain, SimilarCodeDomainOutcome, SimilarCodeEnrichmentAvailability,
360    SimilarCodeEnrichmentState, SimilarCodeGeneration, SimilarCodeGenerationParameters,
361    SimilarCodeInspectOutput, SimilarCodeInspectPacket, SimilarCodeInspectSchemaVersion,
362    SimilarCodeLimits, SimilarCodeLocation, SimilarCodeModelProvenance, SimilarCodeNamedReference,
363    SimilarCodeOutput, SimilarCodePhase, SimilarCodePhaseCompletion, SimilarCodePhaseStatus,
364    SimilarCodeProvider, SimilarCodeProviderProvenance, SimilarCodeReviewOutput,
365    SimilarCodeReviewProvenance, SimilarCodeReviewSchemaVersion, SimilarCodeReviewedCandidate,
366    SimilarCodeSchemaVersion, SimilarCodeScopeProvenance, SimilarCodeSideEffectHint,
367    SimilarCodeSideEvidence, SimilarCodeSimilarityBand, SimilarCodeSkip, SimilarCodeSkipReason,
368    SimilarCodeStatusOutput, SimilarCodeStatusSchemaVersion, SimilarCodeVerdict,
369    SimilarCodeVerdictInput, SimilarCodeVerdictMatch, SimilarCodeVerdictSchemaVersion,
370    SimilarCodeVerdictValidationError, SimilarCodeVerificationStatus,
371    serialize_similar_code_cache_clear_json_output, serialize_similar_code_inspect_json_output,
372    serialize_similar_code_json_output, serialize_similar_code_review_json_output,
373    serialize_similar_code_status_json_output,
374};
375pub use suppressions::{
376    SuppressionInventoryEntry, SuppressionInventoryFile, SuppressionInventoryLevel,
377    SuppressionInventoryOrigin, SuppressionInventoryOutput, SuppressionInventoryOutputInput,
378    SuppressionInventorySchemaVersion, SuppressionInventorySummary, SuppressionKindCount,
379    build_suppression_inventory_output, serialize_suppression_inventory_json_output,
380};
381pub use trace_envelopes::{serialize_trace_error_json_output, serialize_trace_json_output};
382pub use type_aware_envelopes::{
383    TYPE_AWARE_STATUS_SCHEMA_VERSION, TypeAwareStatusOutput,
384    serialize_type_aware_status_json_output,
385};
386pub use walkthrough_render::{
387    MAX_CONTRACT_MEMBERS, WalkthroughAccounting, cap_member_list, cap_names, clean_decision_fact,
388    decisions_outside_units, visible_stage_units,
389};