feat: implement needs-board-sync label workflow
IMPLEMENTED: Label-based project board sync workflow Changes: - Created needs-board-sync label (ID: 34, orange #FFA500) - Modified sync script to auto-add label to new non-complete issues - Created manual workflow documentation Why this approach: - Gitea Projects REST API does NOT exist even in 1.25.5 - Gemini was incorrect about API availability in 1.22+ - Projects API still in development (PR #36824, targeting 1.26.0+) - Confirmed via swagger spec: zero /projects endpoints exist How it works: 1. Sync script creates issues with needs-board-sync label 2. Filter by label in Gitea UI 3. Drag to project board (Backlog column) 4. Remove label after syncing 5. Takes 30-60 seconds per sync session Future automation: When Gitea 1.26.0+ releases with Projects API, we'll modify the sync script to use /projects/ endpoints and remove this manual workflow. Related: Gitea successfully upgraded to 1.25.5 earlier this session Signed-off-by: The Chronicler <claude@firefrostgaming.com>
This commit is contained in:
@@ -41,6 +41,7 @@ LABEL_IDS = {
|
||||
'for/holly': 27,
|
||||
'for/meg': 28,
|
||||
'for/michael': 29,
|
||||
'needs-board-sync': 34,
|
||||
'priority/critical': 8,
|
||||
'priority/high': 9,
|
||||
'priority/low': 11,
|
||||
@@ -172,6 +173,11 @@ class Task:
|
||||
def get_label_ids(self) -> List[int]:
|
||||
"""Get all label IDs for this task"""
|
||||
label_names = [self.status, self.priority, self.task_type] + self.assignees + self.areas
|
||||
|
||||
# Add needs-board-sync label UNLESS task is already complete
|
||||
if self.status != 'status/done':
|
||||
label_names.append('needs-board-sync')
|
||||
|
||||
return [LABEL_IDS[name] for name in label_names if name in LABEL_IDS]
|
||||
|
||||
def to_issue_body(self) -> str:
|
||||
|
||||
Reference in New Issue
Block a user