Re-tag MI-2 as a meta control and reframe it around evidence references - #98
Open
meekrosoft wants to merge 1 commit into
Open
meekrosoft wants to merge 1 commit into
meekrosoft wants to merge 1 commit into
Conversation
MI-2 was tagged BUILD and written as an artifact control: the requirements spoke only about build outputs, and the commentary about hashing them. But content addressable identity is not a property of the build phase. It is the property that lets any control's evidence name its subject unambiguously — a review naming a source revision, a scan naming a codebase state, an approval naming a version. Where that reference is a mutable label instead of a digest, the binding can be broken without altering the evidence, and reviewing the evidence cannot detect it. That makes MI-2 a control over other controls rather than a phase control, so it is re-tagged META alongside MI-22. - Re-tag from BUILD to META - Reframe Summary and Description around the evidence-to-subject reference, naming the controls that depend on it (MI-1, MI-3, MI-5, MI-14, MI-19) - Restructure Requirements as named, testable properties. Replaces the circular "MUST be immutable and cannot be forged or reassigned to different content" with Content-Derived Identity, Collision-Resistant Algorithm and Recorded Algorithm, which state what has to hold and can be checked. - Add Fingerprint References in Evidence, Verifiable on Use and Preserved Across Handoffs, generalising the old artifact-only reference requirement - Rework Examples & Commentary to span the lifecycle — Git commit IDs, OCI digests, lockfile digests, evidence naming its subject, label-to-digest mapping, verification at deployment gates, algorithm migration - Add the missing ## Links section, which was blocking first reading - Add ri-5 Audit and Compliance Evidence Failure to 'mitigates': under this framing it is the risk MI-2 most directly addresses - Expand 'related_mitigations' to MI-8, MI-14 and MI-22 to reflect the cross-cutting scope The BUILD phase keeps MI-3, which owns the binding of an artifact's digest to its source and build metadata; MI-2 now states the identity property that binding relies on. No other control is re-tagged. Verified: lint-check passes, readiness-check reports MI-2 ready (was failing on the missing Links section), and the Jekyll build resolves all new cross-references. The catalogue's Meta phase filter now lists MI-2 and MI-22. Signed-off-by: Mike Long <mikelong2005@gmail.com>
Readiness CheckSDLC Controls Framework — Readiness ReportGenerated: 2026-08-17 Scope: changed files only Risks
Mitigations
Framework Validation CoverageReference IDs are validated against a data file when one is available.
Risk–Mitigation Coverage Matrix
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Re-tags MI-2 Content Addressable Identities from
BUILDtoMETA, and reframes the control body to match.MI-2 was written as an artifact control: the requirements spoke only about build outputs, and the commentary about hashing them. But content addressable identity is not a property of the build phase. It is the property that lets any control's evidence name its subject unambiguously — a review naming a source revision, a scan naming a codebase state, an approval naming a version.
Where that reference is a mutable label rather than a digest, the binding can be broken without altering the evidence, and reviewing the evidence cannot detect the change — because the evidence is not what changed. That makes MI-2 a control over other controls rather than a phase control, so it joins MI-22 under
META(introduced in #97).The
BUILDphase keeps MI-3, which owns the binding of an artifact's digest to its source and build metadata. MI-2 now states the identity property that binding relies on. No other control is re-tagged.Changes
BUILD→META## Links— added; this section was missing and was the readiness blocker flagged in Mitigation Review Tracker #96mitigates— addedri-5Audit and Compliance Evidence Failure, which under this framing is the risk MI-2 most directly addresses.ri-1,ri-7,ri-11unchanged.related_mitigations— expanded with MI-8, MI-14 and MI-22 to reflect the cross-cutting scopeVerification
scripts/lint-checkpassesscripts/readiness-checkreports MI-2 ready — it previously failed on the missing## Linkssection, the blocker recorded against MI-2 in the Mitigation Review Tracker (Mitigation Review Tracker #96)make buildsucceeds and resolves all nine new{% link %}cross-references, with correct single-baseurl URLsdata-phase="META"for MI-2, so the Meta phase filter now lists MI-2 alongside MI-22Notes for reviewers
Three changes go slightly beyond a phase re-tag, called out for a working-group view:
ri-5tomitigatesis a risk-mapping judgement, not a mechanical consequence of the re-tag.## Linksfixes the Mitigation Review Tracker #96 readiness blocker in passing. Happy to split it out if the working group would rather review the re-tag alone.Fingerprint References in Evidencerequirement is deliberately scoped to how evidence names its subject. It does not take over MI-3's tag-to-digest mapping, which stays where it is and is cross-referenced instead.Still outstanding against the MI-8 exemplar, not addressed here: the frontmatter carries only three bare NIST 800-53 IDs with no
note:annotations. MI-8 annotates every reference across five frameworks, and SSDFps-1/ps-3, ISO 27002, FFIEC and SLSA all have plausible mappings for MI-2. That work needs new entries in the hand-maintaineddocs/_data/*.ymlfiles plus a checksum refresh, so it is better as a follow-up.Two pre-existing issues noticed while working, unrelated to this change:
docs/_data/iso-iec-27002.ymlfails its recorded checksum on a clean tree, andreadiness-report.mdis stale (dated 2026-06-20, still reportsmi-1as non-existent).Refs #96