Skip to content

chore(release): prepare v3.4.0#398

Merged
Daren9m merged 1 commit into
mainfrom
chore/release-v3.4.0
May 1, 2026
Merged

chore(release): prepare v3.4.0#398
Daren9m merged 1 commit into
mainfrom
chore/release-v3.4.0

Conversation

@Daren9m
Copy link
Copy Markdown
Collaborator

@Daren9m Daren9m commented Apr 30, 2026

Summary

Reconciles the gap between M#42 (v3.4.0 — Authoritative Narrative Audit & Coverage Closure) closing on GitHub last week and no v3.4.0 tag being cut at the time. All 16 milestone issues plus 4 adjacent fixes shipped to main between v3.0.0 and current HEAD; this PR labels what shipped.

Step 1 of the milestone/release reconciliation plan discussed here. Subsequent steps (move #295 to v4.0.0, resolve #317 spike, sequence remaining minors) will follow as separate PRs.

Changes

  • Bump CheckID.psd1 ModuleVersion 3.0.03.4.0
  • Bump scripts/Build-Registry.py SCHEMA_VERSION 3.0.03.4.0
  • Bump data/registry.json schemaVersion 3.0.03.4.0 (single-line)
  • Move CHANGELOG.md [Unreleased] content into [3.4.0] - 2026-04-30 with theme summary; new empty [Unreleased] section above

Semver classification

Additive-only — no breaking changes. Schema gained optional fields:

  • On frameworks.cis-m365-v6.*: sectionNumber, assessmentStatus, cisSafeguardsByVersion, defaultValue, references
  • On frameworkMapping.*: cisAuthored block (consumer-side ingestion path)

Existing v3.0 consumers continue to work unchanged. No removed fields. No type changes. The ConvertTo-LegacyRemediationString deprecation shim from v3.0.0 is still present — its removal (#295) belongs in v4.0.0, not v3.3.0 as currently scheduled.

What shipped (per CHANGELOG)

14 domain pattern catalogs (#326 umbrella, spikes #327#340): conditional access, privileged access, MFA enforcement, authentication methods, token + session security, external collaboration, defender for office, sharepoint + onedrive, teams, mail flow, intune, defender for cloud apps, power platform, purview.

CIS M365 v6 enrichment infrastructure (#347):

  • Phase 1: optional factual metadata fields (sectionNumber, assessmentStatus, cisSafeguardsByVersion, defaultValue, references)
  • Phase 2: consumer-side prose ingestion model (tools/import-cis-prose.py + cisAuthored schema block) respecting CIS SecureSuite licensing
  • Architecture refinement: data/registry.json always prose-free; data/registry.local.json (gitignored) carries merged prose when consumer artifact present

Force-replace override mode (#316): new mode: "force-replace" in apply_fw_overrides() for cases where SCF mapping needs to be discarded rather than appended.

Adjacent fixes:

Test plan

  • Verify CHANGELOG diff is structurally clean ([Unreleased] empty above, [3.4.0] populated)
  • Confirm Get-Module CheckID -ListAvailable reports 3.4.0 after merge + repull
  • Re-run python scripts/Build-Registry.py and confirm schemaVersion: "3.4.0" is emitted
  • CI passes (Pester gates + dup-key + mapping-count regression)

After merge (deferred to user approval)

Per established release pattern (see #315 for v3.0.0 precedent):

🤖 Generated with Claude Code

- Bump CheckID.psd1 ModuleVersion 3.0.0 -> 3.4.0
- Bump scripts/Build-Registry.py SCHEMA_VERSION 3.0.0 -> 3.4.0
- Bump data/registry.json schemaVersion 3.0.0 -> 3.4.0 (single-line)
- Move CHANGELOG [Unreleased] content into [3.4.0] - 2026-04-30 with
  theme summary; new empty [Unreleased] above

Theme: Authoritative Narrative Audit & Coverage Closure (M#42).
14 domain pattern catalogs (#326-#340) + CIS M365 v6 enrichment
infrastructure (#347) with consumer-side prose ingestion model.

Additive-only release — no breaking changes. Schema gained optional
fields (sectionNumber, assessmentStatus, cisSafeguardsByVersion,
defaultValue, references on cis-m365-v6 mapping; cisAuthored block
on frameworkMapping); existing v3.0 consumers continue to work
unchanged.

Reconciles the gap between M#42 milestone closing on GitHub and
no v3.4.0 tag being cut at the time. After this PR merges, the
v3.4.0 tag will be pushed pending user approval per established
release pattern (see v3.0.0 prep #315).

Note: ENTRA-SSPR-001 rebadge (#355) and CIS v6.0.1 reconciliation
(#352) are included in this release scope (closed against Backlog
milestone but shipped in the v3.0.0..main window). Misfiled-milestone
cleanup will follow as Step 1.5 of the broader semver reconciliation
plan.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

Framework mapping count delta

Framework main this PR Δ Δ% Status
cis-controls-v8 1020 1020 0 +0.00% ✓ OK
cis-m365-v6 166 166 0 +0.00% ✓ OK
cisa-scuba 52 52 0 +0.00% ✓ OK
cmmc 1080 1080 0 +0.00% ✓ OK
eidsca 21 21 0 +0.00% ✓ OK
essential-eight 630 630 0 +0.00% ✓ OK
fedramp 1072 1072 0 +0.00% ✓ OK
gdpr 11 11 0 +0.00% ✓ OK
hipaa 501 501 0 +0.00% ✓ OK
iso-27001 1020 1020 0 +0.00% ✓ OK
iso-27002 1020 1020 0 +0.00% ✓ OK
iso-27017 1012 1012 0 +0.00% ✓ OK
mitre-attack 892 892 0 +0.00% ✓ OK
nis2 311 311 0 +0.00% ✓ OK
nist-800-171 1080 1080 0 +0.00% ✓ OK
nist-800-53 1072 1072 0 +0.00% ✓ OK
nist-csf 826 826 0 +0.00% ✓ OK
pci-dss 1052 1052 0 +0.00% ✓ OK
soc2 1103 1103 0 +0.00% ✓ OK
stig 13 13 0 +0.00% ✓ OK

Result: ✓ PASS — no framework mapping regressions detected.

@github-actions
Copy link
Copy Markdown

Content enrichment population

Overall (1105 checks): rationale 26.3% (291/1105) • impact 26.3% (291/1105) • references 26.3% (291/1105)

Framework n rationale impact references
cis-controls-v8 1020 25.1% (256/1020) 25.1% (256/1020) 25.1% (256/1020)
cis-m365-v6 166 100.0% (166/166) 100.0% (166/166) 100.0% (166/166)
cisa-scuba 52 100.0% (52/52) 100.0% (52/52) 100.0% (52/52)
cmmc 1080 26.3% (284/1080) 26.3% (284/1080) 26.3% (284/1080)
eidsca 21 100.0% (21/21) 100.0% (21/21) 100.0% (21/21)
essential-eight 630 22.2% (140/630) 22.2% (140/630) 22.2% (140/630)
fedramp 1072 27.1% (291/1072) 27.1% (291/1072) 27.1% (291/1072)
gdpr 11 100.0% (11/11) 100.0% (11/11) 100.0% (11/11)
hipaa 501 33.3% (167/501) 33.3% (167/501) 33.3% (167/501)
iso-27001 1020 26.6% (271/1020) 26.6% (271/1020) 26.6% (271/1020)
iso-27002 1020 26.6% (271/1020) 26.6% (271/1020) 26.6% (271/1020)
iso-27017 1012 26.0% (263/1012) 26.0% (263/1012) 26.0% (263/1012)
mitre-attack 892 30.7% (274/892) 30.7% (274/892) 30.7% (274/892)
nis2 311 25.7% (80/311) 25.7% (80/311) 25.7% (80/311)
nist-800-171 1080 26.3% (284/1080) 26.3% (284/1080) 26.3% (284/1080)
nist-800-53 1072 27.1% (291/1072) 27.1% (291/1072) 27.1% (291/1072)
nist-csf 826 31.1% (257/826) 31.1% (257/826) 31.1% (257/826)
pci-dss 1052 26.3% (277/1052) 26.3% (277/1052) 26.3% (277/1052)
soc2 1103 26.4% (291/1103) 26.4% (291/1103) 26.4% (291/1103)
stig 13 100.0% (13/13) 100.0% (13/13) 100.0% (13/13)

Informational only — does not gate the build. The hard release-gate for Critical/High enrichment lives in #281 (v3.2.0).

@Daren9m Daren9m merged commit 209d37f into main May 1, 2026
9 checks passed
@Daren9m Daren9m deleted the chore/release-v3.4.0 branch May 1, 2026 03:58
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.

spike: multi-axis taxonomy schema for frameworks

1 participant