Skip to content

ci: add version-bump check and back-merge workflows - #67

Open
cs-raj wants to merge 4 commits into
developmentfrom
feat/DX-27614-release-process
Open

cs-raj wants to merge 4 commits into
developmentfrom
feat/DX-27614-release-process

Conversation

@cs-raj

@cs-raj cs-raj commented Oct 5, 2026

Copy link
Copy Markdown
Contributor

Problem

Releases here still go development → master without the two guard-rails the other datasync repos have: nothing checks that a PR bumps package.json, and nothing opens the back-merge PR after master moves.

Fix

Adds the two workflows exactly as they run in datasync-content-store-filesystem:

Workflow When What it does
check-version-bump.yml every pull request fails when code changed without a package.json version bump, or the version is not above the latest tag
back-merge-pr.yml push to master opens the master → development back-merge PR if none is open

.talismanrc gets the checksum exemption for check-version-bump.yml that datasync-asset-store-filesystem already carries — Talisman flags one of its echo lines as a potential secret pattern.

Verification

Both files are byte-identical to the copies live in datasync-content-store-filesystem; YAML parses.

Bring the repo onto the release process the other datasync repos use:
check-version-bump.yml fails a pull request that changes code without
bumping package.json above the latest tag, and back-merge-pr.yml opens the
master -> development back-merge pull request after a push to master. Both
files are the copies running in datasync-content-store-filesystem.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@cs-raj cs-raj self-assigned this Oct 5, 2026
Copilot AI balanced review requested due to automatic review settings October 5, 2026 06:18
@snyk-io

snyk-io Bot commented Oct 5, 2026 •

Copy link
Copy Markdown

✅ Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
✅ Open Source Security 0 0 0 0 0 issues
✅ Licenses 0 0 0 0 0 issues
✅ Code Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot review overview

🟡 Changes recommended

The version guard skips library source changes and can accept unchanged versions, leaving the main release safeguard ineffective.

Review effort: Balanced
Findings: 7 Medium severity

Open (7)
What changed in this PR

Adds release guardrails for the MongoDB content store’s development → master workflow.

Changes:

  • Introduces pull-request version-bump validation.
  • Automates master → development back-merge PR creation.
  • Adds a Talisman checksum exemption for the version-check workflow.
File Description
.talismanrc Configures the workflow checksum exemption.
.github/​workflows/​check-version-bump.yml Detects release-affecting changes and validates versions.
.github/​workflows/​back-merge-pr.yml Opens back-merge PRs after pushes to master.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread .github/workflows/back-merge-pr.yml Outdated
Comment thread .github/workflows/check-version-bump.yml Outdated
Comment thread .github/workflows/check-version-bump.yml Outdated
Comment thread .github/workflows/check-version-bump.yml Outdated
Comment thread .github/workflows/check-version-bump.yml Outdated
Comment thread .github/workflows/check-version-bump.yml Outdated
Comment thread .talismanrc Outdated
check-version-bump.yml was copied from an app template: it only counted
app.js, routes/, views/ and similar as code, so a change under src/ or
typings/ never required a bump. It now diffs the PR from its merge base,
treats src/, typings/ and package.json as release-affecting, and requires the
package.json version to be above the highest v* tag by SemVer precedence
instead of the nearest tag compared with sort -V. Back-merge PRs from master
are skipped, since they carry code that is already released.

back-merge-pr.yml skips when master is already contained in development
instead of comparing tip SHAs, which made a manual run after a completed
back-merge try to open an empty PR and fail.

.talismanrc: the check-version-bump.yml exemption checksum is regenerated for
the new content (Talisman flags one of its echo lines as a secret pattern).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings October 13, 2026 09:45

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

cs-raj and others added 2 commits October 24, 2026 19:47
Lock file regenerated (fixed 6 on its own: handlebars critical,
brace-expansion, browserslist, js-yaml high, baseline-browser-mapping
moderate, @babel/core low; all dev-only transitive).
Direct upgrades: none
Overrides: none
.talismanrc: package-lock.json checksum replaced by a
filecontent/base64content ignore so the regen does not trip Talisman.
Vuln count: snyk 0 → 0, npm audit 13 → 7. Build verified passing.
Remaining 7 moderate need majors (jest 30, node-notifier 11) or a
cross-major uuid; left for a separate change.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@cs-raj
cs-raj requested review from a team as code owners October 24, 2026 14:30
@github-actions

Copy link
Copy Markdown

🔒 Security Scan Results

ℹ️ Note: Only vulnerabilities with available fixes (upgrades or patches) are counted toward thresholds.

Check Type Count (with fixes) Without fixes Threshold Result
🔴 Critical Severity 0 0 10 ✅ Passed
🟠 High Severity 0 0 25 ✅ Passed
🟡 Medium Severity 0 0 500 ✅ Passed
🔵 Low Severity 0 0 1000 ✅ Passed

⏱️ SLA Breach Summary

✅ No SLA breaches detected. All vulnerabilities are within acceptable time thresholds.

Severity Breaches (with fixes) Breaches (no fixes) SLA Threshold (with/no fixes) Status
🔴 Critical 0 0 15 / 30 days ✅ Passed
🟠 High 0 0 30 / 120 days ✅ Passed
🟡 Medium 0 0 90 / 365 days ✅ Passed
🔵 Low 0 0 180 / 365 days ✅ Passed

✅ BUILD PASSED - All security checks passed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants