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