@plainconceptsplatform/workflows 0.26.0 → 0.27.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -71,16 +71,27 @@ jobs:
|
|
|
71
71
|
ISSUE: ${{ inputs.linked-issue }}
|
|
72
72
|
run: |
|
|
73
73
|
set -euo pipefail
|
|
74
|
-
|
|
75
|
-
[ "$
|
|
74
|
+
pr=$(gh pr view "$PR" --repo "$REPO" --json state,closingIssuesReferences,body)
|
|
75
|
+
[ "$(jq -r '.state' <<<"$pr")" = "OPEN" ] || { echo "found=false"; exit 0; }
|
|
76
76
|
echo "found=true" >> "$GITHUB_OUTPUT"
|
|
77
77
|
echo "pr=$PR" >> "$GITHUB_OUTPUT"
|
|
78
|
-
|
|
78
|
+
issue="$ISSUE"
|
|
79
|
+
if [ -z "$issue" ]; then
|
|
80
|
+
issue="$(jq -r '.closingIssuesReferences[0].number // empty' <<<"$pr")"
|
|
81
|
+
fi
|
|
82
|
+
if [ -z "$issue" ]; then
|
|
83
|
+
issue="$(jq -r '.body // ""' <<<"$pr" |
|
|
84
|
+
grep -oiE '(close[sd]?|fixe?[sd]?|resolve[sd]?) +#[0-9]+' |
|
|
85
|
+
grep -oE '[0-9]+' | head -n 1 || true)"
|
|
86
|
+
fi
|
|
87
|
+
echo "issue=$issue" >> "$GITHUB_OUTPUT"
|
|
79
88
|
|
|
80
89
|
checkout:
|
|
81
90
|
fetch: ["*"]
|
|
82
91
|
fetch-depth: 0
|
|
83
92
|
|
|
93
|
+
permissions: read-all
|
|
94
|
+
|
|
84
95
|
steps:
|
|
85
96
|
- name: Check out the pull request branch
|
|
86
97
|
env:
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# Managed by @plainconceptsplatform/workflows. Source: loops/workflows/work-router.yml. Update with `workflows update --force`; consumer edits may be overwritten.
|
|
2
|
-
name: "
|
|
2
|
+
name: "# Main Work Router"
|
|
3
3
|
|
|
4
4
|
# Owns every repository automation trigger. Classifies each event into exactly one route,
|
|
5
5
|
# then calls at most one worker or runs one deterministic job. No model runs here.
|
|
@@ -10,71 +10,92 @@ name: "All Work Router"
|
|
|
10
10
|
run-name: >-
|
|
11
11
|
${{ github.event_name == 'issues'
|
|
12
12
|
&& github.event.action == 'opened'
|
|
13
|
-
&& format('Issue opened
|
|
13
|
+
&& format('Event: Issue opened — #{0} {1} by {2}', github.event.issue.number, github.event.issue.title, github.actor)
|
|
14
14
|
|| github.event_name == 'issues'
|
|
15
15
|
&& github.event.label.name == 'bot-working'
|
|
16
16
|
&& contains(github.event.issue.labels.*.name, 'implement')
|
|
17
|
-
&& format('
|
|
17
|
+
&& format('Agent: Implement — #{0} {1}', github.event.issue.number, github.event.issue.title)
|
|
18
18
|
|| github.event_name == 'issues'
|
|
19
19
|
&& github.event.label.name == 'bot-working'
|
|
20
20
|
&& contains(github.event.issue.labels.*.name, 'refine')
|
|
21
|
-
&& format('
|
|
21
|
+
&& format('Agent: Refine — #{0} {1}', github.event.issue.number, github.event.issue.title)
|
|
22
22
|
|| github.event_name == 'issues'
|
|
23
23
|
&& github.event.label.name == 'bot-working'
|
|
24
24
|
&& contains(github.event.issue.labels.*.name, 'direct')
|
|
25
|
-
&& format('Working
|
|
25
|
+
&& format('Working: Direct — #{0} {1}', github.event.issue.number, github.event.issue.title)
|
|
26
26
|
|| github.event_name == 'issues'
|
|
27
27
|
&& github.event.label.name == 'bot-working'
|
|
28
28
|
&& contains(github.event.issue.labels.*.name, 'triage')
|
|
29
|
-
&& format('
|
|
29
|
+
&& format('Agent: Triage — #{0} {1}', github.event.issue.number, github.event.issue.title)
|
|
30
30
|
|| github.event_name == 'issues'
|
|
31
31
|
&& github.event.label.name == 'bot-working'
|
|
32
|
-
&& format('Working: {0}
|
|
32
|
+
&& format('Working: #{0} {1}', github.event.issue.number, github.event.issue.title)
|
|
33
33
|
|| github.event_name == 'issues'
|
|
34
34
|
&& github.event.label.name == 'implement'
|
|
35
35
|
&& endsWith(github.actor, '[bot]')
|
|
36
|
-
&& format('
|
|
36
|
+
&& format('Agent: Implement — #{0} {1}', github.event.issue.number, github.event.issue.title)
|
|
37
37
|
|| github.event_name == 'issues'
|
|
38
38
|
&& github.event.label.name == 'refine'
|
|
39
39
|
&& endsWith(github.actor, '[bot]')
|
|
40
|
-
&& format('
|
|
40
|
+
&& format('Agent: Refine — #{0} {1}', github.event.issue.number, github.event.issue.title)
|
|
41
41
|
|| github.event_name == 'issues'
|
|
42
42
|
&& github.event.label.name == 'direct'
|
|
43
43
|
&& endsWith(github.actor, '[bot]')
|
|
44
|
-
&& format('Working
|
|
44
|
+
&& format('Working: Direct — #{0} {1}', github.event.issue.number, github.event.issue.title)
|
|
45
45
|
|| github.event_name == 'issues'
|
|
46
|
-
&& format('{0}
|
|
46
|
+
&& format('Event: {0} on #{1} by {2}', github.event.label.name, github.event.issue.number, github.actor)
|
|
47
47
|
|| github.event_name == 'issue_comment'
|
|
48
|
-
&& format('
|
|
48
|
+
&& format('Event: Comment on #{0} by {1}', github.event.issue.number, github.actor)
|
|
49
49
|
|| github.event_name == 'pull_request_review'
|
|
50
|
-
&& format('
|
|
50
|
+
&& format('Event: Review on PR #{0} by {1}', github.event.pull_request.number, github.actor)
|
|
51
51
|
|| github.event_name == 'pull_request_review_comment'
|
|
52
|
-
&& format('
|
|
52
|
+
&& format('Event: Review comment on PR #{0} by {1}', github.event.pull_request.number, github.actor)
|
|
53
53
|
|| github.event_name == 'pull_request_target'
|
|
54
|
-
&& format('PR #{0} {1} by {2}', github.event.pull_request.number, github.event.action, github.actor)
|
|
54
|
+
&& format('Event: PR #{0} {1} by {2}', github.event.pull_request.number, github.event.action, github.actor)
|
|
55
55
|
|| github.event_name == 'workflow_run'
|
|
56
|
-
&& format('CI {0} on {1}', github.event.workflow_run.conclusion, github.event.workflow_run.head_branch)
|
|
56
|
+
&& format('Event: CI {0} on {1}', github.event.workflow_run.conclusion, github.event.workflow_run.head_branch)
|
|
57
57
|
|| github.event_name == 'workflow_dispatch'
|
|
58
58
|
&& inputs.operation == 'triage'
|
|
59
|
-
&& format('
|
|
59
|
+
&& format('Agent: Triage — #{0}', inputs.issue-number)
|
|
60
60
|
|| github.event_name == 'workflow_dispatch'
|
|
61
61
|
&& inputs.operation == 'refine'
|
|
62
|
-
&& format('
|
|
62
|
+
&& format('Agent: Refine — #{0}', inputs.issue-number)
|
|
63
63
|
|| github.event_name == 'workflow_dispatch'
|
|
64
64
|
&& inputs.operation == 'implement'
|
|
65
|
-
&& format('
|
|
65
|
+
&& format('Agent: Implement — #{0}', inputs.issue-number)
|
|
66
66
|
|| github.event_name == 'workflow_dispatch'
|
|
67
67
|
&& inputs.operation == 'merge-gate'
|
|
68
|
-
&& format('
|
|
68
|
+
&& format('Agent: Merge Gate — PR #{0}', inputs.pr-number)
|
|
69
69
|
|| github.event_name == 'workflow_dispatch'
|
|
70
70
|
&& inputs.operation == 'visual-verify'
|
|
71
|
-
&& format('
|
|
71
|
+
&& format('Agent: Visual Verify — PR #{0}', inputs.pr-number)
|
|
72
72
|
|| github.event_name == 'workflow_dispatch'
|
|
73
73
|
&& inputs.operation == 'batch'
|
|
74
|
-
&& format('Working
|
|
74
|
+
&& format('Working: Batch — #{0}', inputs.issue-number)
|
|
75
|
+
|| github.event_name == 'workflow_dispatch'
|
|
76
|
+
&& inputs.operation == 'audit'
|
|
77
|
+
&& format('Agent: Audit — manual{0}', '')
|
|
78
|
+
|| github.event_name == 'workflow_dispatch'
|
|
79
|
+
&& inputs.operation == 'release'
|
|
80
|
+
&& format('Agent: Release{0}', '')
|
|
75
81
|
|| github.event_name == 'workflow_dispatch'
|
|
76
82
|
&& format('dispatch: {0}', inputs.operation)
|
|
77
83
|
|| github.event_name == 'schedule'
|
|
84
|
+
&& github.event.schedule == '17 1 * * 1'
|
|
85
|
+
&& format('Agent: Audit — weekly{0}', '')
|
|
86
|
+
|| github.event_name == 'schedule'
|
|
87
|
+
&& github.event.schedule == '43 3 * * *'
|
|
88
|
+
&& format('Agentics: Audit Close — daily{0}', '')
|
|
89
|
+
|| github.event_name == 'schedule'
|
|
90
|
+
&& github.event.schedule == '0 6 * * *'
|
|
91
|
+
&& format('Agentics: Cleanup — daily{0}', '')
|
|
92
|
+
|| github.event_name == 'schedule'
|
|
93
|
+
&& github.event.schedule == '17 * * * *'
|
|
94
|
+
&& format('Agentics: Reconcile — hourly{0}', '')
|
|
95
|
+
|| github.event_name == 'schedule'
|
|
96
|
+
&& github.event.schedule == '23 */6 * * *'
|
|
97
|
+
&& format('Agentics: Maintenance — 6h{0}', '')
|
|
98
|
+
|| github.event_name == 'schedule'
|
|
78
99
|
&& format('schedule {0}', github.event.schedule)
|
|
79
100
|
|| github.event_name }}
|
|
80
101
|
|