feat: add prgs-reconciler profile model and role detection (Closes #304) #388

Merged
sysadmin merged 6 commits from feat/issue-304-reconciler-profile into master 2026-07-07 10:27:13 -05:00
Owner

Summary

Adds the dedicated prgs-reconciler execution profile model and runtime role detection for already-landed PR closure workflows (#304).

Changes

  • New reconciler_profile.py with required/recommended/forbidden operation sets and assess_reconciler_profile() validation (fail-closed on forbidden ops listed in allowed).
  • gitea_get_runtime_context exposes reconciler_profile_assessment and role_kind: reconciler when the active profile matches.
  • migrate_profiles.infer_role() recognizes prgs-reconciler / names containing reconciler.
  • Docs: reconciler profile section in gitea-execution-profiles.md and gitea-reconciler namespace row in dual-namespace deployment guide.
  • Tests: tests/test_reconciler_profile.py (6 cases).

Scope note

This PR delivers profile provisioning and role detection only. The already_landed_reconcile MCP close tool and ancestry gates ship in the #310 stack (PR #381).

Closes #304

## Summary Adds the dedicated **prgs-reconciler** execution profile model and runtime role detection for already-landed PR closure workflows (#304). ## Changes - New `reconciler_profile.py` with required/recommended/forbidden operation sets and `assess_reconciler_profile()` validation (fail-closed on forbidden ops listed in `allowed`). - `gitea_get_runtime_context` exposes `reconciler_profile_assessment` and `role_kind: reconciler` when the active profile matches. - `migrate_profiles.infer_role()` recognizes `prgs-reconciler` / names containing `reconciler`. - Docs: reconciler profile section in `gitea-execution-profiles.md` and `gitea-reconciler` namespace row in dual-namespace deployment guide. - Tests: `tests/test_reconciler_profile.py` (6 cases). ## Scope note This PR delivers profile provisioning and role detection only. The `already_landed_reconcile` MCP close tool and ancestry gates ship in the #310 stack (PR #381). Closes #304
jcwalker3 added 1 commit 2026-07-07 08:40:14 -05:00
jcwalker3 added 1 commit 2026-07-07 08:57:06 -05:00
Merge prgs/master and keep reconciler profile runtime fields (#304)
alongside native MCP shell health (#270).
jcwalker3 added 1 commit 2026-07-07 08:58:56 -05:00
jcwalker3 added 1 commit 2026-07-07 09:19:48 -05:00
Merge prgs/master into feat/issue-304-reconciler-profile; keep both
reconciler_profile and review_merge_state_machine imports.

Closes conflict with master landing review_merge_state_machine (#389 stack).
jcwalker3 added 1 commit 2026-07-07 09:35:00 -05:00
Merge prgs/master; unify reconciler profile docs (#304) with master's
already-landed close tool guidance (#310).
jcwalker3 added 1 commit 2026-07-07 10:20:01 -05:00
Merge prgs/master into feat/issue-304-reconciler-profile; keep both
reconciler_profile and reconciliation_workflow imports in gitea_mcp_server.py.
sysadmin approved these changes 2026-07-07 10:26:59 -05:00
sysadmin left a comment
Owner

Manual review of changed files and test suite validation passed. The new reconciler profile model and role detection logic correctly identify the prgs-reconciler profile, resolving issue #304. All tests pass cleanly. Approved.

Manual review of changed files and test suite validation passed. The new reconciler profile model and role detection logic correctly identify the prgs-reconciler profile, resolving issue #304. All tests pass cleanly. Approved.
sysadmin merged commit f5654963eb into master 2026-07-07 10:27:13 -05:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Scaled-Tech-Consulting/Gitea-Tools#388