Skip to content

Commit 74213a8

Browse files
aksOpsclaudePaperclip-Paperclip
committed
docs(changelog): add CHANGELOG.md to close OpenSSF release_notes (RAN-52)
Per the board's 03:55Z autofill diagnosis on RAN-52: the bestpractices.dev project sits at 91% with a single Unmet — `release_notes` ("No release notes file found"). bestpractices.dev's autofill looks for a CHANGELOG-style file at repo root; per-tag GitHub Releases are not enough on their own. Adds keep-a-changelog format CHANGELOG.md covering: - [Unreleased] — RAN-46/RAN-52 OpenSSF wiring, OSS-CLI security stack, removed Sonar/CodeQL/OWASP DC per path-B ruling, signed-commit branch protection, top-level `permissions: read-all`. - [0.1.0] - 2026-03-28 — GA cut summary; defers per-tag detail to the GitHub Release. - Beta line summary — points to the GitHub Releases pre-release filter for the full v0.0.1-beta.0 … v0.0.1-beta.46 sequence. Once the board re-clicks 🤖 on https://www.bestpractices.dev/projects/12650 the autofill will pick up `CHANGELOG.md` at root, `release_notes` flips to `Met`, and badge_level → `passing`. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Co-Authored-By: Paperclip <noreply@paperclip.ing>
1 parent 80c2fc8 commit 74213a8

1 file changed

Lines changed: 87 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
# Changelog
2+
3+
All notable changes to this project are documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
Per-tag release notes — including the full beta sequence (`v0.0.1-beta.0`
9+
`v0.0.1-beta.46`) — are published on
10+
[GitHub Releases](https://github.com/RandomCodeSpace/codeiq/releases). This file
11+
captures the cross-cutting changes that span multiple commits or releases (new
12+
quality gates, security policy, deploy surface, etc.) — see the GitHub Release
13+
for that specific tag for the per-commit details.
14+
15+
## [Unreleased]
16+
17+
### Added
18+
19+
- OpenSSF supply-chain wiring — Best Practices project
20+
[12650](https://www.bestpractices.dev/projects/12650), live Scorecard at
21+
[securityscorecards.dev](https://api.securityscorecards.dev/projects/github.com/RandomCodeSpace/codeiq),
22+
manifest at `.bestpractices.json`, README badges. (RAN-46, RAN-52, RAN-57)
23+
- `.github/workflows/scorecard.yml` — OpenSSF Scorecard analysis on push +
24+
weekly cron (Mondays 06:00 UTC), SARIF → Security tab. All actions
25+
SHA-pinned per Scorecard `Pinned-Dependencies`.
26+
- `.github/workflows/security.yml` — consolidated OSS-CLI security stack
27+
per RAN-46 path-B board ruling: OSV-Scanner (npm SCA), Trivy (filesystem +
28+
Maven + container CVEs + IaC misconfig), Semgrep (SAST: `p/security-audit`
29+
+ `p/owasp-top-ten` + `p/java`), Gitleaks (secret scan, full git history),
30+
jscpd (duplication < 3% on production code), `anchore/sbom-action` (SPDX +
31+
CycloneDX SBOM). Six gate-blocking jobs (SBOM is artifact-only).
32+
- `SECURITY.md` — private vulnerability-disclosure policy, supported-versions
33+
table, triage SLAs (acknowledgement < 72 h, initial triage < 7 d), and
34+
coordinated-disclosure timeline.
35+
- `shared/runbooks/``engineering-standards.md` (quality gates, code style,
36+
branch/commit/PR rules, testing tiers, security stack, build & distribution,
37+
documentation), `release.md`, `rollback.md`, `first-time-setup.md`,
38+
`test-strategy.md`. SSoT for cross-cutting engineering rules.
39+
- `scripts/setup-git-signed.sh` — one-shot ssh-signed-commit setup helper.
40+
- `CLAUDE.md` "Supply-chain observability (OpenSSF)" section — operator-level
41+
summary of the Best Practices state, Scorecard baseline + target (≥ 8.0/10
42+
stretch with eight checks at max), known floor reductions, and the OSS-CLI
43+
stack reference. (RAN-52 AC #7)
44+
45+
### Changed
46+
47+
- Branch protection on `main` requires every commit to be ssh-signed
48+
(RAN-46 AC #2). Force-pushes to `main` are rejected; squash-merge from
49+
PRs is the only path.
50+
- Top-level `permissions: read-all` on every GitHub Actions workflow per
51+
Scorecard `Token-Permissions`. Per-job permissions opt into narrower
52+
writes only where required (`security-events: write` for SARIF upload;
53+
`id-token: write` for the Scorecard publish step).
54+
- Quality gate stack converged to OSS-CLI only: SpotBugs (`mvn spotbugs:check`),
55+
JaCoCo coverage (≥ 85% line, project-wide), Semgrep + Trivy + OSV-Scanner +
56+
Gitleaks + jscpd from `security.yml`, plus OpenSSF Scorecard as
57+
observability. (RAN-46 path-B board ruling.)
58+
59+
### Removed
60+
61+
- SonarCloud, CodeQL (default-setup and workflow-driven), and OWASP
62+
Dependency-Check are no longer part of the merge gate. Per the RAN-46
63+
path-B board ruling, they are not to be re-introduced without an explicit
64+
board reversal — see `shared/runbooks/engineering-standards.md` §5.1.
65+
66+
## [0.1.0] - 2026-03-28
67+
68+
First general-availability cut. See the
69+
[v0.1.0 GitHub Release](https://github.com/RandomCodeSpace/codeiq/releases/tag/v0.1.0)
70+
for the full notes.
71+
72+
- 97 detectors across 35+ languages.
73+
- Three-command pipeline: `index``enrich``serve`.
74+
- Read-only REST API (37 endpoints), MCP server (34 tools, Spring AI 2.0
75+
streamable HTTP), and React UI shipped inside a single signed JAR.
76+
- Maven Central coordinates: `io.github.randomcodespace.iq:code-iq`.
77+
78+
## [0.0.1-beta.0][0.0.1-beta.46] - 2026-Q1
79+
80+
Pre-GA beta line. Full per-tag notes on
81+
[GitHub Releases](https://github.com/RandomCodeSpace/codeiq/releases?q=prerelease%3Atrue).
82+
The beta cadence shipped from `beta-java.yml` on `workflow_dispatch`; each
83+
beta is an immutable Sonatype Central beta artifact + GPG-signed annotated
84+
git tag + GitHub pre-release.
85+
86+
[Unreleased]: https://github.com/RandomCodeSpace/codeiq/compare/v0.1.0...HEAD
87+
[0.1.0]: https://github.com/RandomCodeSpace/codeiq/releases/tag/v0.1.0

0 commit comments

Comments
 (0)