Expand description
Three-phase submission engine
Handles the workflow of submitting stacked bookmarks as PRs/MRs:
- Analysis - understand what needs to be submitted
- Planning - determine what PRs to create/update
- Execution - perform the actual operations
Structs§
- Noop
Progress - No-op progress callback for testing or when progress isn’t needed
- PrBase
Update - Information about a PR that needs its base updated
- PrTo
Create - Information about a PR that needs to be created
- Stack
Comment Data - Stack comment data embedded in PR comments
- Stack
Item - A single item in the stack
- Submission
Analysis - Result of submission analysis
- Submission
Plan - Submission plan
- Submission
Result - Result of submission execution
Enums§
- Execution
Constraint - Dependency constraint between execution operations.
- Execution
Step - Ordered execution step for a submission plan
- Phase
- Submission phase
- Push
Status - Push operation status
Constants§
- COMMENT_
DATA_ POSTFIX - Postfix for stack comment data
- COMMENT_
DATA_ PREFIX - Prefix for stack comment data
- STACK_
COMMENT_ THIS_ PR - Marker for the current PR in stack comments
Traits§
- Progress
Callback - Progress callback trait
Functions§
- analyze_
submission - Analyze what needs to be submitted for a given bookmark
- build_
stack_ comment_ data - Build stack comment data from the plan and PRs
- create_
narrowed_ segments - Create narrowed segments from resolved bookmarks and analysis
- create_
submission_ plan - Create a submission plan
- execute_
submission - Execute a submission plan
- format_
stack_ comment - Format the stack comment body for a PR (defaults to GitHub format)
- generate_
pr_ title - Generate a PR title from the bookmark’s commits
- get_
base_ branch - Get the expected base branch for a bookmark in a submission
- select_
bookmark_ for_ segment - Select a single bookmark from a segment using heuristics