Skip to content

feat(release-management): add verify-rc live checklist pane mod scaffolding and UI component - #2007

Merged
potiuk merged 3 commits into
apache:mainfrom
Kaap10:feat/release-management-verify-rc-pane
Nov 5, 2026
Merged

potiuk merged 3 commits into
apache:mainfrom
Kaap10:feat/release-management-verify-rc-pane

Conversation

@Kaap10

@Kaap10 Kaap10 commented Nov 5, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Scaffolds plugins/magpie-release-management/hooks/ and wires ambient type declarations in .claude-plugin/plugin.json (types.d.ts) alongside empty Codex hooks for multi-harness parity.
  • Implements the verifyRcState official state atom (atom() from claude-code), data interfaces, and canonical 11-step sequence matching verify-rc/SKILL.md (Steps 0–10).
  • Implements the presentational Pane component with fixed-width status badges, ANSI text scrubbing, 60-character detail truncation, fail-open resilience, and 16 unit tests (claude plugin test).

Type of change

  • Skill change (.claude/skills/<name>/) — eval fixtures updated below
  • Tool / bridge contract (tools/<system>/*.md)
  • Python package (tools/*/ with pyproject.toml)
  • Groovy reference impl
  • Cross-cutting (RFC, AGENTS.md, sandbox, privacy-LLM)
  • Documentation (docs/, README.md, CONTRIBUTING.md)
  • Project template (projects/_template/)
  • CI / dev loop (prek, workflows, validators)
  • Other: Claude Code mod UI component (plugins/magpie-release-management)

Test plan

  • claude plugin validate --strict plugins/magpie-release-management passes with 0 errors and 0 warnings
  • claude plugin test plugins/magpie-release-management passes (16/16 tests passing in 0.51s)
  • python tools/dev/check-family-plugins.py (check_codex_hook_files()) passes with 0 errors
  • uv run pytest plugins/ passes (107 passed, 0 failed)
  • uv run ruff check and uv run mypy pass on tools/dev/check-family-plugins.py
  • python tools/dev/add-license-headers.py --check passes; all files verified strictly LF (crlf=0)

RFC-AI-0004 compliance

  • HITL — read-only presentational component; mutations remain gated on explicit maintainer confirmation
  • Sandbox — no outbound network access or unrestricted host calls; state and UI component execute in mod sandbox
  • Vendor neutrality — empty Codex hooks and manifests provided; headless and alternative harnesses continue using standard CLI output
  • Conversational + correctable — fails open gracefully when UI components are unavailable or unpopulated
  • Write-access discipline — purely presentational; does not draft or publish comments or votes
  • Privacy LLM — handles only release candidate tags and checklist verification metadata

Linked issues

Part 1 of #2006 (scaffolding & UI pane mod). Part of umbrella roadmap #1497.

Notes for reviewers (optional)

…olding and UI component

Set up hooks scaffolding in plugins/magpie-release-management/hooks, declare verifyRcState atom and types, implement presentational Pane component with live status badges, and add unit test suite.

Refs apache#2006, apache#1497

Generated-by: Antigravity (Gemini 2.5 Pro)
@github-actions github-actions Bot added family:tools tools/* family:ci .github workflows, prek, validators family:release-management release-* skills substrate:framework-dev Tool substrate: build / validate / eval the framework itself labels Nov 5, 2026
Kaap10 and others added 2 commits November 5, 2026 10:27
Check-family-plugins json.dumps serializer writes unicode-escaped \\u2014.

Generated-by: Antigravity (Gemini 2.5 Pro)
…c pane

The pane's checklist left out Steps 6b and 6c, which release-verify counts
towards the verdict, so an RC with JVM artefacts had no row for a failure
in either. Add them in STEP_ORDER's order.

Use the sanitizer sequence from the review-findings mod: a line break in a
detail could draw a second, false checklist row, and private-mode escape
sequences left their text behind.

Generated-by: Claude Opus 5

@potiuk potiuk left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks: the mod follows the magpie-pr-management structure and stays additive and presentational. I found two things and fixed both in f95abda8, so you do not need another round:

  • hooks/types.ts: two missing steps. The checklist left out jvm-artefacts (Step 6b) and nexus-staging (Step 6c), which STEP_ORDER in tools/release-verify counts towards the verdict, so an RC with JVM artefacts had no row for a failure in either. It now has 13 steps. A step that does not apply should show as skipped, so please handle that in PR-2.
  • hooks/verify-rc-pane.ts: sanitizeText. A line break in a detail could draw a second, false row such as [PASS] another check, and private-mode sequences like \x1b[?25l left text behind. It now uses the same sequence as sanitizeFindingText in the review-findings mod. This matters once PR-2 feeds it tool output.

The tests in verify-rc-pane.test.ts are updated and cover both. The PR description still says 11 steps; the code now has 13.


This review was drafted by an AI-assisted tool and
confirmed by an Apache Magpie maintainer. The maintainer
approving this PR has read the findings and signed off. If
something feels off, please reply on the PR and a maintainer
will follow up.

More on how Apache Magpie handles maintainer review:
Contributing guide.

@potiuk
potiuk merged commit 1e5c4f9 into apache:main Nov 5, 2026
11 checks passed
potiuk added a commit that referenced this pull request Nov 5, 2026
Describe the ASF network scoping from #1978, including the claim it made
false that containers share the sandbox's host allow-list. Record the run
cost and pointer proof from #2000, the verify-rc pane from #2007, and the
nine-skill pr-management family.

Recheck every Known gaps bullet in eleven specs: delete those now closed,
rewrite the stale ones, and annotate the rest with gap-closes-when.

Generated-by: Claude Opus 5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

family:ci .github workflows, prek, validators family:release-management release-* skills family:tools tools/* substrate:framework-dev Tool substrate: build / validate / eval the framework itself

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants