ReleaseSentry checks whether a repo, product, or release candidate is actually ready to ship.
It is the release-readiness layer for PatchHive: not another changelog generator, but the product that gathers the evidence behind a ready, watch, or hold call before humans or HiveCore push a release forward.
GitHub-facing product doc: docs/products/release-sentry.md
Standalone mirror: patchhive/release-sentry
ReleaseSentry answers release questions:
- Did CI pass on the branch or tag being considered?
- Are there unresolved release blockers?
- Did version, changelog, tag, and package/image state drift apart?
- Did dependency, security, or flake pressure become too risky to ignore?
- What changed since the last release?
ReleaseSentry does not replace RepoReaper, MergeKeeper, or HiveCore. It sits after merge-readiness and before shipping.
- Read-only GitHub release readiness checks through
POST /check/github/release. - Changelog/version/tag drift detection for a target branch, version, or tag.
- CI and workflow health summary for the candidate branch.
- Open release-blocker issue detection by configurable blocker labels.
- Common release surface checks for manifests, Compose files, and CI/release workflows.
- Saved run history through
/history,/runs, and/runs/:idfor HiveCore. - A release decision with evidence:
ready,watch, orhold.
Example request:
{
"repo": "patchhive/patchhive2",
"branch": "main",
"target_version": "0.2.0",
"target_tag": "v0.2.0",
"changelog_path": "CHANGELOG.md",
"workflow_run_limit": 20
}cp .env.example .env
docker compose up --buildFrontend: http://localhost:5184
Backend: http://localhost:8120
cp .env.example .env
cd backend && cargo run
cd ../frontend && npm install && npm run dev- The frontend uses
@patchhivehq/uiand@patchhivehq/product-shell. - The backend stores release readiness history in SQLite at
RELEASE_SENTRY_DB_PATH. - GitHub-backed checks should use a fine-grained token with Metadata (read), Contents (read), Actions (read), Issues (read), and Deployments/Releases read access where available.
- Keep repository access public-only unless release readiness for private repos is explicitly enabled.
- Generate the first local API key from
http://localhost:5184. - If remote bootstrap is intentional, set
PATCHHIVE_ALLOW_REMOTE_BOOTSTRAP=true.
ReleaseSentry should be developed in the PatchHive monorepo first. The standalone repository, when exported, should be treated as a mirror of this directory rather than a second source of truth.