GitHub Issues integration #81
Replies: 2 comments
-
|
Also send plan as comment to Github Issue after its created with tag Plan and once tagged is removed after back and forth for a good plan, Start implementing ? |
Beta Was this translation helpful? Give feedback.
-
|
Hey @brynary ~ I'm working on the following proposal and wanted to discuss with you if this proposal for GitHub Issues intake resonates with your vision. Proposal: GitHub Issue Intake for Fabro WorkflowsFabro workflows are usually started from the CLI or API. This workflow starts somewhere else: a GitHub issue. This proposal adds a small convention for starting Fabro workflows from labeled GitHub issues. The mechanism is based on GitHub webhooks, but the workflow author only needs to configure labels and consume normal Fabro inputs. What It EnablesA repository can define normal workflows such as:
Maintainers can then start the right workflow by labeling an issue. For example:
Fabro comments on the issue when it starts the run, so contributors can follow what happened. Repository ConfigurationThe repository adds one routing file on the default branch: # .fabro/workflows/github.toml
[issues]
trigger_label = "fabro"
[[issues.workflow_labels]]
label = "Bug"
workflow = "fix-bug"
[[issues.workflow_labels]]
label = "Feature"
workflow = "implement-feature"When the trigger label is added, Fabro checks the issue's current labels. Exactly one workflow label must match. If no workflow label matches, or multiple workflow labels match, Fabro comments on the issue and does not start a run. Workflow names are simple names under Workflow InputsThe started workflow receives the issue as normal Fabro inputs:
Workflow authors use these exactly like any other input: // .fabro/workflows/fix-bug/workflow.fabro
digraph FixBug {
graph [goal="Fix GitHub issue: {{ inputs.github_issue_title }}"]
start [shape=Mdiamond]
fix [
shape=box,
prompt="Read {{ inputs.github_issue_url }} and fix the bug.\n\nIssue body:\n{{ inputs.github_issue_body }}"
]
exit [shape=Msquare]
start -> fix -> exit
}Maintainer Flow
To run the workflow again for the same issue, remove and re-add the trigger label. Why This ShapeThis keeps the workflow definition in the repository, next to the workflows it starts. Maintainers control routing with labels, and workflow authors get issue data through the same input mechanism they already use elsewhere in Fabro. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Integrate with GitHub Issues to create workflow runs from issues, update issue status based on run progress, and post run results as comments. Enable workflows that automatically pick up and work on labeled issues.
Beta Was this translation helpful? Give feedback.
All reactions