Skip to main content

verbs/
lib.rs

1// SPDX-License-Identifier: Apache-2.0
2//! Embeddable Heddle facade scaffolding.
3
4pub mod actor;
5pub mod agent_fanout;
6pub mod agent_ops;
7pub mod approval_plan;
8pub mod clone_plan;
9pub mod collapse_plan;
10pub mod completion_plan;
11pub mod context;
12pub mod context_plan;
13pub mod contract;
14pub mod daemon_plan;
15pub mod diff;
16pub mod doctor_docs_plan;
17pub mod doctor_plan;
18pub mod doctor_schemas_plan;
19pub mod fsck;
20pub mod gc_plan;
21pub mod git_projection_io_plan;
22pub mod harness_json;
23pub mod harness_policy;
24pub mod hook_plan;
25pub mod identity_cursor;
26pub mod identity_payload;
27pub mod index_plan;
28pub mod init_plan;
29pub mod integration_plan;
30pub mod log_plan;
31pub mod maintenance_plan;
32pub mod marker_plan;
33pub mod merge;
34pub mod onboarding;
35pub mod oplog_plan;
36pub mod oss_plan;
37pub mod principal;
38pub mod prove_plan;
39pub mod provenance_verify;
40pub mod purge_plan;
41pub mod query;
42pub mod rebase_plan;
43pub mod redact_plan;
44pub mod remote;
45pub mod resolve;
46pub mod resolve_plan;
47pub mod revert_plan;
48pub mod review;
49pub mod save;
50pub mod semantic_plan;
51pub mod shell_plan;
52pub mod source_authority;
53pub mod spool_plan;
54pub mod status;
55pub mod thread;
56pub mod thread_lifecycle;
57pub mod thread_materialize;
58pub mod thread_plan;
59pub mod thread_shaping;
60pub mod timeline_plan;
61pub mod undo;
62pub mod verify;
63pub mod visibility_plan;
64pub mod watch_plan;
65pub mod workflow;
66
67pub use actor::{
68    ActorChainEntry, ActorDoneOptions, ActorDonePlan, ActorEntryReport, ActorListReport,
69    ActorShowReport, assemble_actor_entry, complete_actor_entry, filter_actors, filter_actors_ref,
70    list_actors, list_actors_from_registry, mark_actor_done, plan_actor_done,
71    show_actor_by_session, show_actor_from_entry,
72};
73pub use agent_fanout::{
74    FanoutBaseFacts, FanoutBaseSelection, FanoutCommandSpec, FanoutLaneAvailability,
75    FanoutLanePreflightBlock, FanoutLaneReport, FanoutNodeSpec, FanoutPlan, FanoutPlanError,
76    FanoutPlanReport, FanoutPlanRequest, FanoutTaskPlaceholder, assemble_fanout_plan_report,
77    assemble_fanout_start_commands, check_fanout_start_preflight, ensure_unique_thread_names,
78    fanout_child_body, fanout_parent_body, fanout_parent_delegated_by, fanout_start_attach_rule,
79    parse_fanout_lane, parse_fanout_lanes, plan_fanout, select_fanout_base,
80    select_fanout_parent_thread,
81};
82pub use agent_ops::{
83    AgentCaptureOptions, AgentCapturePlan, AgentCapturePlanError, AgentCaptureThreadCheck,
84    AgentExplainReport, AgentReadyOptions, AgentReadyPlan, AgentReadyPlanError,
85    AgentReservationListReport, AgentReservationReport, assemble_agent_explain,
86    assemble_agent_reservation, assemble_agent_reservation_list, check_agent_capture_thread,
87    default_attach_reason_message, filter_agent_reservations, filter_agent_reservations_ref,
88    plan_agent_capture, plan_agent_ready,
89};
90pub use approval_plan::{
91    EligibilitySummary, approval_recorded_message, approval_revoked_message,
92    approvals_empty_message, approvals_header, eligibility_allowed_message,
93    eligibility_approvals_counted_message, eligibility_blocked_message, format_unix_secs_display,
94    format_unix_secs_label, plan_eligibility_summary, short_state_id, state_id_bytes_to_string,
95    timestamp_secs_u64, unmet_requirement_line,
96};
97pub use clone_plan::{
98    AdoptPlan, AdoptPlanError, AdoptPlanOptions, CloneMode, ClonePlan, ClonePlanError,
99    ClonePlanFacts, ClonePlanOptions, CloneRemoteSource, CloneSecurityPreflight,
100    CloneThreadSelectError, MonorepoCloneJsonReport, MonorepoClonePlan, MonorepoClonePlanError,
101    MonorepoCloneResultSummary, MonorepoEdgeFacts, MonorepoEdgeSkipReason, MonorepoExecutionPlan,
102    MonorepoExecutionProgress, MonorepoNodeExecution, MonorepoNodeExecutionError,
103    MonorepoNodeExecutionStep, MonorepoNodeFacts, MonorepoNodePlan, MonorepoNodeStepOptions,
104    MonorepoPlacedJsonRow, MonorepoPlacedNodeSummary, MonorepoSkippedChild, MonorepoSkippedJsonRow,
105    UnsupportedCloneFlag, absolute_path, assemble_clone_security_preflight,
106    assemble_monorepo_clone_json_report, assemble_monorepo_clone_result_summary,
107    looks_like_git_overlay_url, looks_like_local_path, monorepo_execution_progress,
108    monorepo_rel_display, normalize_clone_depth, plan_adopt, plan_clone, plan_monorepo_clone,
109    plan_monorepo_execution, plan_monorepo_node_steps, resolve_adopt_start_path,
110    resolve_clone_destination, select_clone_checkout_thread, select_clone_mode,
111    validate_clone_destination, validate_clone_mode_options, validate_monorepo_clone_options,
112    validate_monorepo_execution, validate_monorepo_node_execution,
113};
114pub use collapse_plan::{
115    CollapsePlan, collapse_has_source_states, collapse_states_required_kind, plan_collapse,
116};
117pub use context::{ExecutionContext, ExecutionContextBuilder, Verbosity};
118pub use context_plan::{
119    ContextContentPlanError, ContextRmPlanError, annotation_passes_filters,
120    annotation_status_label, audit_duplicate_count, audit_staleness_key, audit_target_key,
121    context_target_kind_and_label, count_active_annotations, filter_annotations,
122    next_annotation_tags, plan_annotation_content_source, plan_context_rm,
123    suggestion_tier_human_label, suggestion_tier_token, supersede_reuses_original_scope,
124    supersede_reuses_original_target,
125};
126pub use contract::{
127    HeddleReport, MachineOutputKind, OutputDiscriminator, ReportContract, schema_for_report,
128};
129pub use diff::{
130    ContextSnippet, DiffOptions, DiffReport, DiffStats, FileChange, FileContextEntry, FileEolState,
131    LineCounts, LineDiff, PlainGitDiffProbe, SemanticChangeEntry, SymlinkChange,
132    attach_show_context, change_line_counts, compute_state_diff, compute_tree_diff, diff,
133    diff_worktree_status, plain_git_head_diff, render_diff_patch, render_diff_patch_bytes,
134    should_render_modified_pair, trim_added_decorations_for_display, worktree_context_state,
135    write_diff_patch,
136};
137pub use fsck::{FsckError, FsckOptions, FsckRepair, FsckReport, fsck};
138pub use gc_plan::{
139    GcDryRunPlan, gc_consolidated_mirror_message, gc_dry_run_messages, gc_dry_run_pack_message,
140    gc_dry_run_prune_message, gc_pack_message, gc_pinned_redactions_message,
141    gc_preserved_redactions_message, gc_prune_loose_message, gc_pruned_git_mapping_message,
142    gc_status_token, plan_gc_dry_run,
143};
144pub use harness_json::{
145    VerificationClaimPolicyFacts, VerificationClaimTrustFacts, first_value_string, map_from_pairs,
146    merge_string_vec, opencode_tool_name, opencode_tool_status, parse_relay_payload,
147    raw_git_preservation_command, repository_verification_allows_success_claim, value_array_join,
148    value_cost_micros, value_cost_micros_u64, value_string, value_string_array, value_u64,
149    value_u64_string,
150};
151pub use harness_policy::{
152    ExplicitAgentBind, HarnessFingerprint, HarnessKind, HarnessProbeDecision, SegmentRotation,
153    SessionAttachDecision, SessionAttachFacts, SessionAttachRule, SessionLookupFact, SessionPolicy,
154    TokenSidFact, WorktreeSessionFact, attach_published_segment_fields, cursor_segment_rotation,
155    decide_harness_probe, decide_session_attach, detect_harness_kind,
156    fingerprint_harness_from_hints, segment_rotation_policy, should_rotate_segment,
157};
158pub use hook_plan::{
159    HookInstallSourceKind, HookInstallSourcePlan, hook_install_empty_stdin_kind,
160    hook_install_source_required_kind, hook_unknown_kind, plan_hook_install_source,
161};
162pub use identity_cursor::{
163    IDENTITY_CURSOR_FILE, IdentityCursor, expire_identity_cursor, harness_kind_from_basename,
164    identity_cursor_path, published_field, read_identity_cursor, stamp_identity_cursor,
165    thought_level_from_payload, value_string_or_named, write_identity_cursor,
166};
167pub use identity_payload::{
168    claude_cursor_patch, codex_cursor_patch, cursor_event_expires, cursor_patch_from_child_env,
169    cursor_patch_from_stdin, opencode_cursor_patch, opencode_event_type, pi_cursor_patch,
170    stamp_event_expires, stamp_harness_name,
171};
172pub use init_plan::{
173    InitPrincipalPlan, SET_PRINCIPAL_COMMAND, init_recommended_action, init_side_effects,
174    principal_is_unconfigured, resolve_absolute_path, select_init_principal,
175};
176pub use log_plan::{
177    ReflogLine, extract_scope_bytes, fit_author, format_missing_blobs_suffix, parse_reflog_line,
178    session_list_status, short_oid, summarize_context_line, summarize_paths,
179    timeline_branch_reason, timeline_cursor_reason, timeline_label, timeline_recovery_status,
180    timeline_tool_status, truncate_with_ellipsis, yes_no,
181};
182pub use marker_plan::{
183    MarkerDeleteSelector, MarkerDeleteSelectorError, marker_bulk_delete_message,
184    marker_create_message, marker_delete_message, marker_list_filter_matches,
185    marker_prefix_is_valid, plan_marker_delete_selector,
186};
187pub use merge::{
188    GitCommitInfo, GitCommitPreview, MergeAttemptPlan, MergeOptions, MergePlan, MergeRelation,
189    MergeRelationKind, MergeReport, OperatorAction as MergeOperatorAction,
190    OperatorCommandOutput as MergeOperatorCommandOutput, PreviewTarget, ThreadPreviewReport,
191    ThreeWayMergeOutcome, apply_merged_tree, apply_merged_tree_external, bench_detect_renames,
192    bench_find_merge_base, bench_three_way_merge, build_thread_preview_report,
193    ensure_worktree_clean, merge_thread, merge_thread_into_current,
194    merge_thread_into_current_transactional, merge_thread_into_current_with_machine_contract,
195    prepare_dir_for_file_replacement, try_three_way_merge_between_tips,
196};
197pub use objects::{
198    CollectingWarnings, HeddleError, NoopProgress, NoopWarnings, ProgressEvent, ProgressSink,
199    TaskId, Warning, WarningSink,
200};
201pub use onboarding::{
202    OnboardingAction, OnboardingFacts, OnboardingMode, OnboardingPlan, OnboardingRepositoryState,
203    plan_repository_onboarding,
204};
205pub use oplog_plan::{
206    OPLOG_RECOVER_DEFAULT_STRATEGY, OplogRecoverFacts, OplogRecoverStatus,
207    oplog_recover_damaged_bytes, oplog_recover_damaged_range_display, oplog_recover_detail_fields,
208    oplog_recover_entries_lost_display, oplog_recover_headline, oplog_recover_headline_from_facts,
209    oplog_recover_shows_detail, oplog_recover_shows_strategy_field, plan_oplog_recover,
210    plan_oplog_recover_status,
211};
212pub use principal::{
213    ResolvedPrincipal, principal_source_display, resolve_principal, resolve_principal_without_repo,
214};
215// prove_plan timestamp helpers intentionally not re-exported at crate root (collide with
216// approval_plan::timestamp_secs_u64 / format_unix_secs_label). Use verbs::prove_plan::*.
217pub use prove_plan::{
218    HostRepoPlanError, ProofStatusKind, proof_status_label, proof_submit_followup,
219    require_host_repo,
220};
221pub use provenance_verify::{
222    ProvenanceReport, StateProvenanceVerification, verify_repository_provenance,
223};
224pub use purge_plan::{PurgeApplyPlan, plan_purge_apply, purge_apply_message, purge_force_command};
225pub use query::{QueryHit, QueryReport, QueryRequest, query};
226pub use rebase_plan::{
227    RebaseContinuePlan, RebaseStartFacts, RebaseStartPlan, no_rebase_in_progress_kind,
228    plan_rebase_abort, plan_rebase_continue, plan_rebase_start, rebase_target_not_found_kind,
229    rebase_target_required_kind,
230};
231pub use redact_plan::{RedactionSignatureStatus, redaction_signature_status, short_public_key};
232pub use remote::{
233    ALL_THREADS_MIRROR_COVERS_NOTE, COMMITS_SEEN_SCOPE, FORCE_DISCARD_WARNING, GIT_NOTES_REF,
234    GIT_NOTES_VISIBILITY_WARNING, GitConfigContext, GitOverlayPushTracking, GitRemoteConfigured,
235    GitUpstreamConfigured, HostedPullResult, HostedPullResultFields, HostedPushPlan,
236    HostedPushResult, HostedPushResultFields, IncludedGitRemoteConfigError, LocalTransferSummary,
237    MultiRefPushProgress, PullExecutionFacts, PullFailure, PullOutcome, PullOutcomeText, PullPlan,
238    PullPlanRequest, PushExecutionFacts, PushFailure, PushOutcome, PushOutcomeText, PushPath,
239    PushPlan, PushPlanRequest, RemoteInfo, RemoteListReport, RemotePreflightBlocker,
240    UNKNOWN_TRANSPORT_ERROR, all_threads_mirror_coverage_note, all_threads_uses_single_mirror_push,
241    build_pull_outcome, build_push_outcome, default_pull_thread_name, default_push_thread_name,
242    first_multi_thread_push_failure, format_connected_to, format_mirror_failure_text,
243    format_mirror_success_text, format_multi_ref_push_progress, format_multi_thread_refs_detail,
244    format_pull_outcome_text, format_pulling_from, format_push_outcome_text, format_pushing_to,
245    format_ref_list, format_remote_state_detail, git_overlay_current_thread_push_ok,
246    git_overlay_pull_execution_facts, git_overlay_push_execution_facts,
247    git_overlay_push_scope_description, git_overlay_ref_scope, git_overlay_thread_mismatch_blocker,
248    heddle_pull_execution_facts, heddle_pull_execution_facts_from_hosted,
249    heddle_pull_execution_facts_from_local, heddle_single_push_execution_facts,
250    heddle_single_push_execution_facts_from_hosted, heddle_single_push_execution_facts_from_local,
251    hosted_path_contains_internal_user_namespace, hosted_spool_display_path,
252    is_native_transport_mismatch, list_plain_git_remotes, list_remotes, local_pull_changed,
253    looks_like_git_forge_remote, looks_like_git_remote_url, looks_like_known_git_host,
254    looks_like_remote_location, merged_remote_items, message_indicates_already_exists,
255    multi_ref_progress_from_hosted_thread, multi_ref_push_begin, multi_ref_thread_failed,
256    multi_ref_thread_succeeded_hosted, multi_ref_thread_succeeded_local, multi_thread_failed_names,
257    multi_thread_push_execution_facts, multi_thread_reported_refs,
258    named_thread_tip_mismatch_failure, parse_hosted_pull_result, parse_hosted_push_result,
259    plain_git_remote_items, plan_hosted_push, plan_pull, plan_push, pull_requires_clean_worktree,
260    pull_should_materialize, pull_status, pull_tip_changed, pull_will_materialize,
261    push_scope_label, push_status, redact_internal_hosted_paths, refuse_named_thread_tip_overwrite,
262    remote_advice_kind, remote_missing_blocker, remote_pull_failure, remote_push_failure,
263    remote_urls_match, resolve_default_push_remote_name, resolve_default_remote_name,
264    resolved_default_remote_name, show_plain_git_remote, show_remote, summarize_pull_outcome,
265    summarize_push_outcome, transport_error_message, transport_mismatch_blocker,
266    uses_git_overlay_mirror_rpc, uses_local_git_overlay_transport,
267};
268pub use resolve::{
269    AgentReport, ConflictRangeReport, ConflictRegionReport, ConflictResolutionModeReport,
270    ConflictResolutionReport, ConflictSideReport, PrincipalReport, ResolveReport,
271    ResolverAttributionReport, ResolverKindReport,
272};
273pub use resolve_plan::{
274    ResolveSideSelection, contains_line_start_conflict_markers, path_is_active_conflict,
275    plan_resolve_side, resolve_requires_marker_check, unresolved_conflict_paths,
276};
277pub use revert_plan::{
278    RevertMessageMode, RevertOutcome, RevertPlan, RevertSuccessFacts,
279    default_revert_commit_message, no_changes_to_revert_kind, no_changes_to_revert_summary,
280    plan_revert, revert_has_no_changes, revert_inspect_command, revert_success_message,
281};
282pub use save::{
283    CaptureAgentReport, CaptureAttribution, CaptureDiagnostics, CaptureOptions,
284    CapturePrincipalReport, CaptureProfile, CaptureReport, CommitGitIndexPlan, GitScope, SavePlan,
285    SaveReport, SaveVerb, capture, commit_next_action_from_trust, commit_scope_text,
286    complete_current_thread_manual_resolution, execute_save, plan_commit_git_index,
287    plan_commit_git_index_only, plan_creates_new_state, plan_git_scope, plan_writes_git_checkpoint,
288    recover_published_git_checkpoint, split_git_extra_paths, staged_commit_summary, tree_leaf_name,
289};
290pub use semantic_plan::{
291    HOT_EVENT_KIND_TOKENS, HotEventKindToken, hot_event_kind_label, human_event_kind,
292    parse_hot_event_kind_token,
293};
294#[cfg(feature = "semantic")]
295pub use semantic_plan::{hot_event_kind_token, human_hot_event_kind, map_hot_event_kind};
296pub use state_review::install_capture_signal_computer;
297pub use status::{
298    ActorInfo, ChangesInfo, CoordinationStatus, FastShortStatusProfile, FastShortStatusReport,
299    GitImportGuidanceReport, GitIndexPlan, MaterializedThreadInfo, ParallelThreadInfo,
300    PlainGitStatusReport, RepositoryVerificationCheck, RepositoryVerificationHealth, StateInfo,
301    StatusCombinedVerdict, StatusDetail, StatusOptions, StatusProfile, StatusReport,
302    StatusThreadSummary, assess_materialized_threads,
303    build_repository_verification_health_with_worktree_status, changes_from_worktree_status,
304    changes_path_count, changes_paths, combined_verdict_axes, coordination_axis_clean,
305    coordination_label, coordination_severity, fast_short_status_report, git_index_plan_for_root,
306    health_severity, human_thread_health, large_capture_requires_force, plain_git_status_report,
307    principal_is_default_unknown, principal_lacks_accountable_identity,
308    resolve_coordination_with_trust, status, status_combined_verdict,
309};
310pub use thread::{
311    AvailableGitRef, ThreadActorInfo, ThreadListEntry, ThreadListOptions, ThreadListReport,
312    ThreadSummary, ThreadTaskSummary, ThreadUpdateBefore, capture_thread_update_before,
313    collect_thread_summaries, find_thread_summary, list_threads, list_threads_with_worktree_status,
314    save_thread_update, split_available_git_refs, thread_is_available_git_ref,
315    thread_is_imported_git_ref, visibility_label,
316};
317pub use thread_lifecycle::{
318    CleanWorktreeGuard, ThreadDropDisposition, ThreadDropOptions, ThreadDropPlan,
319    ThreadPromoteOptions, ThreadPromotePlan, ThreadRefreshOptions, ThreadRefreshPlan,
320    contains_conflict_marker_bytes, format_refresh_conflict_markers, plan_clean_worktree_guard,
321    plan_cleanup_thread_drop, plan_thread_drop, plan_thread_promote, plan_thread_refresh,
322    promote_confirm_in_place_removal, promote_existing_checkout_path,
323    promote_in_place_conversion_candidate, resolve_promote_target_path,
324    should_materialize_refresh_conflict_markers, thread_mode_requires_unmount,
325};
326pub use thread_materialize::{
327    ADVISORY_ACTIVE_HEAVY_THREAD_THRESHOLD, CheckoutCopyPolicy, CheckoutPathPlan,
328    CheckoutRewindPlan, CreateDirAttempt, MaterializeStep, RelativePathNormalizeError,
329    SelfCreatedDirRewindPlan, SharedTargetRedirectDecision, StartCleanupStep, StartEffectKind,
330    StartEffectPreconditionError, StartEffectStagingFacts, StartTransactionPlan,
331    TargetDirClaimKind, TargetDirCreateIntent, TargetLeafRefusal, TargetLeafShape,
332    ThreadMaterializePlan, ThreadsRootPathClass, ThreadsRootPathSafetyError,
333    append_safe_relative_components, claim_kind_after_empty_dir_adoption,
334    claim_kind_for_create_attempt, classify_materialize_error, classify_path_vs_threads_root,
335    classify_target_leaf_shape, effect_requires_established_claim, mode_is_bytes_on_disk,
336    path_components_are_safe, path_is_nested_in_reserved_region, path_is_strict_descendant,
337    path_is_under_or_equal, plan_checkout_copy_policy, plan_checkout_path, plan_checkout_rewind,
338    plan_hydrate, plan_materialize_steps, plan_self_created_dir_rewind,
339    plan_shared_target_redirect, plan_start_cleanup, plan_start_transaction,
340    plan_target_dir_create_intent, plan_thread_materialize, plan_write_manifest,
341    require_established_claim, shared_target_redirect_applies, shared_target_workspace_is_busy,
342    should_advise_shared_target, should_warn_materialized_without_reflink,
343    threads_root_path_layout_allowed, validate_empty_dir_adoption,
344    validate_start_effect_preconditions, validate_threads_root_path_safety,
345};
346pub use thread_plan::{
347    AutoWorkspaceDefault, ExplicitPathPlacement, ThreadBaseError, ThreadBaseSelection,
348    ThreadCreateOptions, ThreadCreatePlan, ThreadPathIsolationError, ThreadPlanError,
349    ThreadStartOptions, ThreadStartPlan, WorkspaceModeRequest, active_reservation_blocks_start,
350    active_reservation_path_matches, check_explicit_path_isolation,
351    classify_explicit_path_placement, explicit_path_allowed_for_git_overlay,
352    mode_honors_explicit_path, path_isolation_enforced, plan_thread_create, plan_thread_mode,
353    plan_thread_start, select_thread_base, start_requires_clean_worktree, validate_thread_name,
354};
355pub use thread_shaping::{
356    CaptureSplitOptions, NoPathsMatchedDetails, ThreadMoveOptions, ThreadMoveOutput,
357    ThreadShapingError, capture_split, thread_move,
358};
359pub use timeline_plan::{
360    TimelinePlanError, TimelineSelection, TimelineTargetOptions, parse_branch_reason,
361    parse_materialize_mode, parse_tool_status, plan_timeline_target,
362    timeline_materialization_recovery_status, timeline_materialize_status,
363};
364pub use undo::{
365    LiveThreadWorktree, PurgeOpRef, RedactOpRef, RedactionUndoBatchFacts, RequiredStateRef,
366    ThreadWorktreeHazard, UndoApplyPlan, UndoApplyPreflightError, UndoApplyStep, UndoBatchSummary,
367    UndoHistoryAction, UndoListReport, UndoOperationSummary, UndoPlan, UnsupportedRedoOp,
368    batch_status, check_redaction_redo_supported, check_redaction_undo_safe,
369    check_states_reachable, check_thread_worktree_undo_safe, collect_redaction_undo_facts,
370    collect_redo_required_states, collect_thread_worktree_hazards, collect_undo_required_states,
371    collect_unsupported_redo_ops, empty_history_refusal, human_operation_description,
372    human_post_undo_trust_status, human_undo_redo_message, list_undo_history,
373    list_undo_history_ctx, live_materialized_path_blocks_undo, machine_undo_redo_message,
374    plan_redo_apply_steps, plan_redo_batches, plan_undo_apply, plan_undo_apply_steps,
375    plan_undo_batches, require_nonempty_history, summarize_batch, undo_mode_conflict,
376    validate_undo_list_preview_modes,
377};
378pub use verify::{
379    ActionAudience, ActionTemplate, MachineContractCoverage, MachineContractInput,
380    PlainGitVerifyProbe, RepositoryContextInfo, RepositoryPresentation, RepositorySetupActionKind,
381    RepositorySetupGuidance, RepositoryVerificationState, VerificationCheck, VerifyOptions,
382    VerifyProfile, VerifyReport, build_plain_git_verification_probe,
383    build_plain_git_verification_probe_with_machine_contract, build_repository_verification_state,
384    build_repository_verification_state_with_machine_contract,
385    build_repository_verification_state_with_worktree_status,
386    build_repository_verification_state_with_worktree_status_and_machine_contract,
387    dirty_path_count, repository_mode_label, repository_presentation, repository_setup_action_kind,
388    repository_setup_guidance, verify,
389};
390pub use visibility_plan::{visibility_tier_kind, visibility_tier_label};
391pub use workflow::{
392    AUTO_LAND_CONFIDENCE_RECOVERY_ACTION, AUTO_LAND_CONFIDENCE_THRESHOLD, AutoLandPolicyInput,
393    ReadyDecision, ReadyDecisionInput, auto_land_confidence_recovery_action,
394    auto_land_policy_blockers, classify_ready_decision, has_integration_target,
395    integrated_land_next_action, integration_blocker_recommended_action, integration_blockers,
396    is_heavy_impact_advisory, is_integration_clear, is_manual_review_blocker,
397    land_blockers_for_preview, land_checkpoint_message, land_performed_steps, land_skipped_steps,
398    land_text_step, land_warnings_for_preview, non_staleness_blockers, op_targets_merge_state,
399    quote_recommended_action_arg, ready_freshness_summary, ready_integration_summary,
400    ready_merge_type_label, ready_merge_type_summary, ready_report_recommended_action,
401    ready_scoped_next_action, ready_status_summary, ready_verification_preflight_blocks,
402    ready_verification_status_blocks, recovery_scope_checkout, scope_action_to_repo,
403    should_squash_land, state_id_matches_display, state_id_matches_op_display,
404    sync_completed_next_action, sync_is_already_current,
405};