-
Notifications
You must be signed in to change notification settings - Fork 13
Release Process
The default cadence is one change per release, sequenced HIGH → MEDIUM → LOW, never bundled — a discipline proven over the 32-release v1.58.x cycle (all CI-green). Batching is justified only when items share the same CSS/tests surface and close out a cycle. Feature releases (like v1.118.0) are the exception and ship as one coherent parity pack.
-
package.jsonis the source of truth (SemVer). The SPA footer reads it via/api/health. - The parent's
VERSIONfile is reported separately asparentVersion— the two drift independently (e.g. UI v1.118.0 ↔ parent v1.18.0). - Conventional commits:
feat/fix/refactor/docs/test/chore/perf/ci, optional scope,!for breaking.
Every release ships all of the following:
-
Version bump in
package.json. -
CHANGELOG ×17 — the English entry plus all 16 translated CHANGELOGs at the new version. Gate:
scripts/check-changelog-parity.mjs. - README ×17 — release banner, badges (tests count), and breadcrumb updated in all 17 READMEs.
-
Help ×17 — every help-guide section touched by the release updated in all 17
docs/help/<lang>.mdbundles; H2/H3 count gates bumped if sections were added. - i18n keys ×17 — new UI strings in all 17 locale dicts + regenerated snapshot.
- Tests — new coverage for the change; all four suite baselines (unit / Playwright / smoke E2E / comprehensive E2E) kept ≥ the previous floor (unit: 2364 at v1.142.0).
-
QA prompt — a new
qa/QA-REGRESSION-PROMPT-v<version>.mddelta driver (see Testing and QA). -
Docs/SDD —
docs/architecture/*updated in the same PR when routes/flows changed. - Playwright live verify against the running server.
-
Pre-commit AI review LGTM (advisory) +
ci.ymlgreen (the hard gate — watch the run, not just the local hook). - Redeploy the local instance.
The flow to GitHub Packages (npm.pkg.github.com, package @fighter90/career-ops-ui):
- Merge to
mainwith CI green. -
Push the tag
v<version>— the tag fires the Release workflow (GitHub Release creation). -
The Publish workflow is release-event triggered but must be dispatched manually when needed:
gh workflow run— nevernpm publishlocally.
The repo uses spec-driven development: discuss → spec → plan → execute → verify → review via the gsd-* skills. No non-trivial code change without a written spec and plan first. Planning artifacts live in .planning/ (gitignored scratch); specs that graduate become permanent under docs/specs/ and docs/adr/. Trivial changes (single-file fix, typo, version bump) skip the ceremony.
- Never
--no-verify,--force, orgit reset --hardwithout explicit approval — pre-commit hooks fail for a reason. - One PR = one logical change; unrelated fixes get their own branch.
- Branch protection on
main; merges require green status checks (with the documented CodeQL false-positive dismissal exception — see Security).
career-ops-ui v1.209.0 · Repository · Releases · Issues
Guides
Reference
Development
Languages (Home)