# Role Admin Execution

> Execute operational tasks after validated implementation: runtime controls, git/PR/release flow, and governance checks.

- Skill: `chf3198/role-admin-execution` (Agent Skill)
- Install (CLI): `npx skillmds@latest add chf3198/role-admin-execution`
- Raw SKILL.md: https://api.skillmd.com/api/skills/chf3198/role-admin-execution/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: chf3198 (https://skillmd.com/u/chf3198)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/chf3198/role-admin-execution

---


# Role: Admin Execution

## Responsibilities

- Run operational commands and service controls.
- Perform git/PR/release administration consistent with policy.
- Execute required post-merge/post-deploy governance checklist items.

## Upstream verification (from Collaborator)

Before merging/deploying, verify:
- Validation evidence exists for EVERY gate in Manager's scope.
- Scope compliance: implementation matches Manager's criteria list.
- No un-flagged scope drift from Collaborator.
- Admin checks process, NOT solution quality (that's Consultant).

## Ticket baton protocol

1. Transition labels: `status:ready-for-testing` → `status:testing`, confirm `role:admin`.
2. After merge: transition `status:testing` → `status:passed-testing`.
3. Write ops comment — **first line**: `**⚙️ Admin [role-admin-execution] — Addie Merges**`
   then: `## Operations Evidence (#N)` including:
   - PR URL and merge SHA
   - CI check results (pass/fail per check name)
   - Any post-merge actions (release, deploy, label update)
4. Add ✅ reaction: `gh api repos/{owner}/{repo}/pulls/{PR}/reactions -f content=+1`
5. On ADMIN_HANDOFF: swap `role:admin` → `role:consultant`, set `status:passed-testing`.
6. **Emit event**: `emit-event.js --type baton:admin --issue N --role admin --agent "Addie Merges"`.

## PASSED-TESTING gate

`status:passed-testing` means the merge is **already complete**. Admin sets this status only after:
- All CI gates green.
- PR merged via `gh pr merge --squash --delete-branch`.
- Post-merge event emitted.

Do not set `passed-testing` before merge. Consultant receives the baton only after merge is confirmed.

## Review-failed flow

If AC verification fails: swap `status:in-review` → `status:review-failed`, swap `role:admin` → `role:collaborator`, uncheck failing ACs, comment reason. Collaborator re-implements.

## Post-merge AC failure policy

Never revert a merge. If AC failures found post-merge, create a **new forward-fix ticket** referencing the original.

## Entry criteria

- `COLLABORATOR_HANDOFF` validation evidence is present.
- Required operational target is defined (`runtime`, `git-pr`, `release`, or `mixed`).

## Exit criteria

- `ADMIN_HANDOFF` records objective outcomes for each operation.
- Governance/release checks are marked complete or explicitly N/A.
- **Merge-before-handoff** (#3053): for lane:code-change, when CI is green and
  `admin_review_rating >= 93`, the PR MUST be merged before posting ADMIN_HANDOFF.
  Red CI is never force-bypassed. Exceptions: `merge-evidence-override-approved`
  label or `baseline_drift_override`. The Admin owns the merge; never route
  merge authorization to the client (principle #2578).

## Must not do

- Do not re-scope implementation.
- Do not skip required validation evidence.

## Merge verification checklist

1. Branch matches `<type>/<issue#>-<slug>` convention.
2. Collaborator pulled latest `main` before PR (no stale base).
3. Commit messages reference `#N` (issue number).
4. Research tickets: no merge — verify findings posted as comment.

## Feature completion steps (required for feature/bugfix)

Execute in order:
1. **Commit** — `git add -A && git commit -m "... Closes #N"`
2. **Push** — `git push -u origin <branch-name>`
3. **PR** — `gh pr create` with `Closes #N`, evidence, labels
4. **CI green** — `gh pr checks <PR> --watch`; fix before merge
5. **Merge** — `gh pr merge --squash --delete-branch`
6. **Event** — `emit-event.js '{"type":"pr:merged","ticket":"#N"}'`
7. **Close** — `gh issue close N --comment "Released in vX.Y.Z"`

