feat(notations): ship core METRIC element type - #417
Merged
Conversation
Ships the METRIC element type - the managed indicator an organisation tracks to know whether a GOAL is moving, or whether a CAPABILITY / PROCESS is performing as intended. New ELEMENT_PRIMITIVES.md §7.26: fields measures / unit / target / direction_of_good / owner_role, no ArchiMate counterpart per the 2026-07-30 vocabulary rule. New TYPE-registry row and uniqueness-scope row in IDS_AND_REFERENCES.md §3.1/§4; catalogue path 01_motivation/metrics/; validator rules METRIC-001..004 in ELEMENT_PRIMITIVES.md §9. Disambiguates explicitly from COVERAGE_METRIC (a report-config document with no canonical content of its own) in both the element spec and the IDS registry entry, since the two share a name root but are opposite kinds of thing. Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> Signed-off-by: transitrix <279946036+transitrix@users.noreply.github.com>
This was referenced Jul 30, 2026
Keep RISK as §7.26 (main) and renumber METRIC to §7.27 so both core types coexist after parallel landings. Co-authored-by: Cursor <cursoragent@cursor.com>
vkgeorgia
approved these changes
Jul 31, 2026
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
METRICelement type per the 2026-07-30 core-vocabulary decision: the managed indicator an organisation tracks to know whether aGOALis moving, or whether aCAPABILITY/PROCESSis performing as intended.notations/ELEMENT_PRIMITIVES.md§7.26: fieldsmeasures(non-empty list ofGOAL-…/CAPABILITY-…/PROCESS-…) /unit/target/direction_of_good(higher_is_better|lower_is_better|on_target) /owner_role. No ArchiMate counterpart — stated explicitly per the 2026-07-30 vocabulary rule.notations/IDS_AND_REFERENCES.md§3.1 / §4; catalogue path01_motivation/metrics/; validator rulesMETRIC-001..004inELEMENT_PRIMITIVES.md§9.COVERAGE_METRIC(a report-config document with no canonical content of its own, computing a regulatory dark-cell count) in both the element spec and the IDS registry entry — the two share a name root but are opposite kinds of thing.Context worth flagging
canon/instance data of its own. Companion PR: feat: add METRIC worked example acme-corp#60 (METRIC-REVENUE-GROWTH-1.yaml+ folder README).COVERAGE_PROFILES.mdandplugin.json(both named in the acceptance criteria):COVERAGE_PROFILES.md'sfullpreset already covers "every TYPE in the registry" by reference — no edit needed.plugin.jsonhas no per-TYPE registry (it lists views/reports, not element TYPEs) — nothing to update there either. Same conclusion as the sibling RISK change, noted there for the same reason.CHANGELOG.mdintentionally left untouched — this is one of several sibling changes landing in parallel PRs against the same file; a single aggregating entry is better done once, after they all land.METRICin the motivation layer (01_motivation/metrics/), alongsideASSESSMENT— it's a measurement primitive over the organisation's intent, even though what it measures (GOAL/CAPABILITY/PROCESS) can sit in a different layer. Rationale spelled out in the new §4.1 bullet.Test plan
node scripts/check-notations.mjs→ cleannpx @transitrix/cli validate --scope=repo --json→valid: trueacme-corpfixture validated (--scope=repo --json→valid: true; per-file CLI validation correctly reports the notation isn't registered yet — expected, Studio follow-on is separately filed)