Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace Track*/Track * with Monitor in CISA-based decision model #738

Conversation

ahouseholder
Copy link
Contributor

This PR modifies the "Track *" value in the CISA OutcomeGroup to be "Monitor". Based on feedback received that having two closely-named values "Track" and "Track *" can be a source of confusion for users of that outcome group.

Two incidental changes are also included:

  • Fixed the key values for Attend and Act in the python version of the CISA OutcomeGroup to match the keys found in docs/ssvc-calc/CISA-Coordinator.json
  • Updated the OutcomeGroup base object type hint to reflect actual usage (values are a tuple instead of a list)

CoPilot Summary

This pull request includes several updates to the docs/ssvc-calc and src/ssvc/outcomes directories to standardize terminology and improve code structure. The most important changes include renaming "Track*" to "Monitor" in JSON and HTML files, updating the OutcomeGroup class to use tuples instead of lists, and restructuring outcome groups in the codebase.

Terminology Standardization:

  • docs/ssvc-calc/CISA-Coordinator.json: Renamed "Track*" to "Monitor" in multiple entries to standardize terminology. [1] [2] [3] [4] [5]
  • docs/ssvc-ccalc/findex.html and docs/ssvc-calc/old_index.html: Updated "Track*" to "Monitor" in the vulnerability scoring decisions section. [1] [2]

Code Structure Improvements:

  • src/ssvc/outcomes/base.py: Changed the outcomes attribute in the OutcomeGroup class from a list to a tuple for better immutability and performance.
  • src/ssvc/outcomes/groups.py: Updated the OutcomeGroup instances to use the new "Monitor" terminology and restructured the CISA outcome group. Additionally, added new descriptions and keys for the "Act" outcome. [1] [2] [3] [4] [5] [6]

@ahouseholder ahouseholder requested a review from j--- March 6, 2025 17:22
@ahouseholder ahouseholder self-assigned this Mar 6, 2025
@ahouseholder ahouseholder added the enhancement New feature or request label Mar 6, 2025
@sei-vsarvepalli
Copy link
Contributor

In discussions with CISA to update the following locations in their website related to this content.

https://www.cisa.gov/profiles/cisad8_gov/modules/custom/ssvc/data/schema_examples/CISA-Coordinator-v2.0.3.json
[Earlier JSON scheme version of the Decision Tree full JSON]

https://www.cisa.gov/profiles/cisad8_gov/modules/custom/ssvc/js/ssvc.js?v=2.x

https://www.cisa.gov/sites/default/files/publications/cisa-ssvc-guide%20508c.pdf

https://www.cisa.gov/stakeholder-specific-vulnerability-categorization-ssvc

@ahouseholder ahouseholder changed the title Replace Track* or Track * with Monitor in CISA-based decision model Replace Track*/Track * with Monitor in CISA-based decision model Mar 6, 2025
@ahouseholder ahouseholder marked this pull request as ready for review March 11, 2025 17:41
@ahouseholder ahouseholder merged commit a54f999 into main Mar 11, 2025
4 checks passed
@ahouseholder ahouseholder deleted the 699-change-track-to-monitor-in-our-representation-of-cisas-tree branch March 11, 2025 19:12
@ahouseholder ahouseholder restored the 699-change-track-to-monitor-in-our-representation-of-cisas-tree branch March 11, 2025 19:29
@ahouseholder ahouseholder added this to the 2025-03 milestone Mar 20, 2025
ahouseholder added a commit that referenced this pull request Mar 26, 2025
…rsion of schema is available. (#760)

* Convert cwes list to markdown with fewer rows and columns (#737)

* Update verbiage because we have a list of CWE-IDs per issue 529.

* Clean CWE-IDs list to only exploit_possible=yes, eliminate need for side scrolling, add hyperlinks, and create a markdown version of the csv per issues 530 and 713.

* markdown lint

* Fix broken link to cwe examples and remove cwe csvs file to enforce a single source of truth.

* Make the linkchecker happy

* Really fix links this time

* Replace `Track*`/`Track *` with `Monitor` in CISA-based decision model (#738)

* change type hints on OutcomeGroup class

* black reformat

* replace `Track *` with `Monitor`

* carve a new version of CISA OutcomeGroup to reflect `Track *` -> `Monitor`

* replace `Track*` with `Monitor` in json

* replace CISA.json with Monitor outcome value

* more substitutions

* Revert "Replace `Track*`/`Track *` with `Monitor` in CISA-based decision mode…" (#741)

This reverts commit a54f999.

* Bump markdown-exec from 1.10.0 to 1.10.1 (#746)

Bumps [markdown-exec](https://github.com/pawamoy/markdown-exec) from 1.10.0 to 1.10.1.
- [Release notes](https://github.com/pawamoy/markdown-exec/releases)
- [Changelog](https://github.com/pawamoy/markdown-exec/blob/main/CHANGELOG.md)
- [Commits](pawamoy/markdown-exec@1.10.0...1.10.1)

---
updated-dependencies:
- dependency-name: markdown-exec
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump the mkdocs group with 6 updates (#747)

Bumps the mkdocs group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [mkdocs-bibtex](https://github.com/shyamd/mkdocs-bibtex) | `4.2.2` | `4.2.3` |
| [mkdocs-include-markdown-plugin](https://github.com/mondeja/mkdocs-include-markdown-plugin) | `7.1.4` | `7.1.5` |
| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.6.7` | `9.6.9` |
| [mkdocstrings](https://github.com/mkdocstrings/mkdocstrings) | `0.28.2` | `0.29.0` |
| [mkdocstrings-python](https://github.com/mkdocstrings/python) | `1.16.2` | `1.16.5` |
| [mkdocs-print-site-plugin](https://github.com/timvink/mkdocs-print-site-plugin) | `2.6.0` | `2.7.1` |


Updates `mkdocs-bibtex` from 4.2.2 to 4.2.3
- [Release notes](https://github.com/shyamd/mkdocs-bibtex/releases)
- [Commits](shyamd/mkdocs-bibtex@v4.2.2...v4.2.3)

Updates `mkdocs-include-markdown-plugin` from 7.1.4 to 7.1.5
- [Release notes](https://github.com/mondeja/mkdocs-include-markdown-plugin/releases)
- [Commits](mondeja/mkdocs-include-markdown-plugin@v7.1.4...v7.1.5)

Updates `mkdocs-material` from 9.6.7 to 9.6.9
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](squidfunk/mkdocs-material@9.6.7...9.6.9)

Updates `mkdocstrings` from 0.28.2 to 0.29.0
- [Release notes](https://github.com/mkdocstrings/mkdocstrings/releases)
- [Changelog](https://github.com/mkdocstrings/mkdocstrings/blob/main/CHANGELOG.md)
- [Commits](mkdocstrings/mkdocstrings@0.28.2...0.29.0)

Updates `mkdocstrings-python` from 1.16.2 to 1.16.5
- [Release notes](https://github.com/mkdocstrings/python/releases)
- [Changelog](https://github.com/mkdocstrings/python/blob/main/CHANGELOG.md)
- [Commits](mkdocstrings/python@1.16.2...1.16.5)

Updates `mkdocs-print-site-plugin` from 2.6.0 to 2.7.1
- [Release notes](https://github.com/timvink/mkdocs-print-site-plugin/releases)
- [Commits](timvink/mkdocs-print-site-plugin@v2.6.0...v2.7.1)

---
updated-dependencies:
- dependency-name: mkdocs-bibtex
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: mkdocs
- dependency-name: mkdocs-include-markdown-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: mkdocs
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: mkdocs
- dependency-name: mkdocstrings
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: mkdocs
- dependency-name: mkdocstrings-python
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: mkdocs
- dependency-name: mkdocs-print-site-plugin
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: mkdocs
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* add `mdlint_fix` target to Makefile (#744)

* pin changed-files action to specific sha1 (#750)

* Add NameSpace Enum (#749)

* add a namespace Enum along with a pydantic dataclass validator to enforce it

Valid = str in enum OR str.startswith("x_")

* add validator to _Namespaced mixin class

* refactor base classes to use NameSpace enum values

* add optional "x_" prefix as valid namespace pattern

* update unit tests

* add docstrings

* bump python test version to 3.12

* update the regex pattern for namespaces, add validation to pydantic field

* refactor namespace validation methods

* add unit tests

* simplify regex to avoid inefficiencies

* add length requirements to namespace patterns and fields

* refactor regex again

* add docstrings

* add docs, update docstrings

* Update Decision_Point-1-0-1.schema.json

Modify Namespace information and examples as wel..

* Update Decision_Point-1-0-1.schema.json

Matching x_custom/extension as examples for schema docs.

* we shouldn't mention nciss yet as it's still a draft PR

* missed an nciss

---------

Co-authored-by: Vijay Sarvepalli <[email protected]>

* Refactor SsvcDecisionPoint base class mixins (#743)

* create a `_Valued` mixin

* add `_Valued` mixin to base decision point class. Also reorder mixins to adjust default json output key order

* update json examples to reflect new base class mixin ordering

* add len() to _Valued mixin

* add tests

* Bump tj-actions/changed-files from 46.0.1 to 46.0.3 (#757)

Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 46.0.1 to 46.0.3.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](tj-actions/changed-files@2f7c5bf...823fceb)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump markdown-exec from 1.10.1 to 1.10.2 (#756)

Bumps [markdown-exec](https://github.com/pawamoy/markdown-exec) from 1.10.1 to 1.10.2.
- [Release notes](https://github.com/pawamoy/markdown-exec/releases)
- [Changelog](https://github.com/pawamoy/markdown-exec/blob/main/CHANGELOG.md)
- [Commits](pawamoy/markdown-exec@1.10.1...1.10.2)

---
updated-dependencies:
- dependency-name: markdown-exec
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump mkdocstrings-python from 1.16.5 to 1.16.8 in the mkdocs group (#755)

Bumps the mkdocs group with 1 update: [mkdocstrings-python](https://github.com/mkdocstrings/python).


Updates `mkdocstrings-python` from 1.16.5 to 1.16.8
- [Release notes](https://github.com/mkdocstrings/python/releases)
- [Changelog](https://github.com/mkdocstrings/python/blob/main/CHANGELOG.md)
- [Commits](mkdocstrings/python@1.16.5...1.16.8)

---
updated-dependencies:
- dependency-name: mkdocstrings-python
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: mkdocs
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Allen D. Householder <[email protected]>
Co-authored-by: sei-renae <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Change "Track *" to "Monitor" in our representation of CISA's tree
3 participants