feat(org): add org-level branch protection rulesets & configurable help URLs #72
No Reviewers
Labels
Clear labels
breaking-change
ci-cd
config
dependencies
deploy-failure
docker
documentation
good first issue
health-check
help wanted
mokostandards
priority: critical
priority: high
priority: low
priority: medium
push-failure
security
size/l
size/m
size/s
size/xl
size/xs
standards-drift
standards-update
status: blocked
status: in-progress
status: needs-review
status: on-hold
status: wontfix
sync-failure
type: bug
type: chore
type: enhancement
type: feature
type: refactor
type: version
work-in-progress
bug
chore
documentation
enhancement
feature
priority: critical
priority: high
priority: low
priority: medium
refactor
roadmap
scope: client
scope: dolibarr
scope: infrastructure
scope: joomla
scope: waas
security
status: blocked
status: duplicate
status: in-progress
status: needs-review
status: wontfix
Breaking API or behavior change
CI/CD pipeline changes
Configuration changes
Dependency updates
Deployment failed
Docker/container changes
Documentation changes
Good for newcomers
Repo health check result
Extra attention needed
Related to MokoStandards framework
Must fix immediately
Important, fix soon
Nice to have
Normal priority
Git push operation failed
Security vulnerability or hardening
200-500 lines changed
50-200 lines changed
10-50 lines changed
500+ lines changed
< 10 lines changed
Deviates from MokoStandards
MokoStandards compliance update
Blocked by dependency or decision
Actively being worked on
Awaiting code review
Paused intentionally
Will not be addressed
Sync or mirror failed
Something isn't working
Maintenance, dependencies, cleanup
Improvement to existing feature
New functionality
Code restructuring without behavior change
Version bump or release
Draft or incomplete work
Something is not working
Maintenance and housekeeping
Documentation improvements
Improvement to existing functionality
New feature or request
Must fix immediately
Should fix soon
Nice to have
Fix when convenient
Code restructuring without behavior change
Planned feature or enhancement tracked on the roadmap
Client-specific work
Dolibarr modules and customizations
Server, CI, backups, monitoring
Joomla templates and extensions
MokoWaaS platform
Security vulnerability or hardening
Waiting on external dependency
Duplicate of another issue
Being worked on
Ready for review
Will not be addressed
No labels
Milestone
No items
No Milestone
Projects
Clear projects
No projects
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: MokoConsulting/MokoGitea#72
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "feature/org-branch-protection"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
GET/POST/PATCH/DELETE /api/v1/orgs/{org}/branch_protectionsHELP_URLandSUPPORT_URLsettings (replaces hardcoded docs.gitea.com)1261.xx.xxversion convention for MokoGitea forkChanges
Org Branch Protection (8 files)
org_protected_branchtableOrgProtectedBranchmodel with CRUD + glob matchingreqToken() + reqOrgOwnership()authGetFirstMatchProtectedBranchRule()InheritedFromfield onBranchProtectionAPI responseHelp/Support URLs (7 files)
HELP_URL/SUPPORT_URLinapp.iniglobal section{{HelpURL}}template function instead of hardcoded URLTest plan
HELP_URLin app.ini, verify navbar links updateCloses #38
🤖 Generated with Claude Code
Co-Authored-By: Claude Opus 4.6 (1M context) noreply@anthropic.com
Add organization-scoped branch protection rules that cascade to all repos within the org. Repo-level rules take precedence; org rules serve as the fallback when no repo rule matches a branch. - New table: org_protected_branch (migration v332) - OrgProtectedBranch model with full CRUD operations - API endpoints: GET/POST/PATCH/DELETE /api/v1/orgs/{org}/branch_protections - Inheritance via GetFirstMatchProtectedBranchRule() fallback - InheritedFrom field added to BranchProtection API response - Org rules use team-based whitelists (no per-user IDs at org level) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>