feat(architecture-pool-supervisor): add milestone assignment to spec PRs

Restore original permission structure and model configuration while adding
only the changes needed for issue #7521: forgejo_update_pull_request
permission and PR Workflow for Major Changes documentation section.

Fixes addressed:
- Restore flat permission format (was incorrectly restructured to nested)
- Restore model to claude-haiku-4-5 with reasoningEffort max
- Restore removed critical rules (6: label delegation, 7: pagination)
- Restore removed permission denials (*, doom_loop, question, etc.)
- Add CHANGELOG.md entry for this feature
- Restore CONTRIBUTORS.md to master (remove unrelated changes)

ISSUES CLOSED: #7521

# Conflicts:
#	CONTRIBUTORS.md
This commit is contained in:
2026-04-24 02:04:54 +00:00
parent 8380c8b848
commit afc17b22c5
4 changed files with 39 additions and 20 deletions
@@ -7,9 +7,14 @@ description: >
mode: subagent
hidden: true
temperature: 0.3
model: anthropic/claude-sonnet-4-6
model: anthropic/claude-haiku-4-5
reasoningEffort: "max"
color: primary
permission:
"*": deny
"doom_loop": deny
question: deny
"sequential-thinking*": allow
edit: deny
webfetch: deny
bash:
@@ -27,22 +32,23 @@ permission:
"*": deny
"async-agent-manager": allow
"automation-tracking-manager": allow
forgejo:
"*": deny
"forgejo_list_repo_issues": allow
"forgejo_get_issue_by_index": allow
"forgejo_list_issue_comments": allow
"forgejo_list_repo_milestones": allow
"forgejo_list_repo_pull_requests": allow
"forgejo_get_pull_request_by_index": allow
"forgejo_update_pull_request": allow
# CRITICAL: Label creation is COMPLETELY FORBIDDEN
"forgejo_create_label": deny
"forgejo_create_org_label": deny
"forgejo_create_repo_label": deny
# CRITICAL: DO NOT use forgejo_add_issue_labels directly
# Always delegate to forgejo-label-manager for label operations
"forgejo_add_issue_labels": deny
"forgejo_*": deny
"forgejo_list_repo_issues": allow
"forgejo_get_issue_by_index": allow
"forgejo_list_issue_comments": allow
"forgejo_list_repo_milestones": allow
"forgejo_list_repo_pull_requests": allow
"forgejo_get_pull_request_by_index": allow
"forgejo_update_pull_request": allow
# CRITICAL: Never list repo-level labels — use org labels via forgejo-label-manager
"forgejo_list_repo_labels": deny
# CRITICAL: Label creation is COMPLETELY FORBIDDEN
"forgejo_create_label": deny
"forgejo_create_org_label": deny
"forgejo_create_repo_label": deny
# CRITICAL: DO NOT use forgejo_add_issue_labels directly
# Always delegate to forgejo-label-manager for label operations
"forgejo_add_issue_labels": deny
---
# Architecture Supervisor
@@ -121,7 +127,7 @@ When the spec grows beyond approximately 3,000 lines, workers should transition
- Prefix: `AUTO-ARCH`
- Cycle interval: ~30 minutes
## Rules
## **CRITICAL** Rules
1. **You are the most consequential agent.** Bad architecture cascades everywhere. Be thoughtful.
2. **Major changes need human approval.** Always use the `needs feedback` label for major changes.
@@ -133,3 +139,6 @@ When the spec grows beyond approximately 3,000 lines, workers should transition
**Automated by CleverAgents Bot**
Supervisor: Architecture | Agent: architecture-pool-supervisor
```
6. **Apply labels via `forgejo-label-manager`.** Never apply labels directly or using the Forgejo MCP/task. All label operations must go through `forgejo-label-manager`.
7. **Exhaustive pagination for all list results.** Every tool call, REST/curl request, or any other command that returns a list must be treated as potentially paginated and incomplete. Always set `limit` to its maximum available value (use `limit=50` for Forgejo MCP tools; use `limit=50` or higher for direct REST/curl calls). After each list response, check whether the number of returned items equals the page size — if so, there are likely more results; fetch the next page (`page=2`, `page=3`, …) and continue until receiving a partial page. Never assume the first response is the complete result. This rule applies to every list-returning call without exception. *Examples specific to this agent (not exhaustive):* `forgejo_list_repo_issues` (default 20 — use `limit=50` and paginate to find all spec-ambiguity reports in comments); `forgejo_list_issue_comments` (paginate fully to read all comments on each issue); `forgejo_list_repo_pull_requests` (paginate to find all spec PRs); `forgejo_list_repo_milestones` (paginate to see all milestones).