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

[FEATURE]: Add additional component types for Manufacturing/Formulation/ML artifacts #563

Open
mrutkows opened this issue Jan 8, 2025 · 3 comments
Assignees
Milestone

Comments

@mrutkows
Copy link
Contributor

mrutkows commented Jan 8, 2025

During the v1.5 proposal process for formulation schema (or Manufacturing BOM, MBOM), the emphasis was on creating the new schema needed; however, the WG was presented additional considerations to better support formulation component types. Specifically, this list was presented as an initial concept list of new type values (cut/pasted) here:

Note: “component” should support new “type” enum. values. 

Proposed minimum adds:  

"configuration", 
// includes K8s resource definitions (and downstream definitions from Knative, Tekton, etc.)
"tool", 
// A hardware or software tool that was used in a task
// Note: Supports early examples where “tools” were special task objects
"task", // to designate workflow task “components” type
// Note: Could use “container” type for Tekton
"repository” (external, resource storage)
// define source/target for input/output to tasks e.g., GitHub
Others (TBD):
“storage” (more generic storage term)
“workspace” (in-workflow, ephemeral storage)

Describe the feature

Please note that many "components" of an MBOM may be ephemeral or logical in nature, but are backed by or represent physical entities (i.e., hardware, such as storage) or instances of data (such as configurations) that are created/instantiated during the formulation process perhaps by the underlying platform or execution environment.

This issue is intended to propose a set of new type values for discussion that will allow better clarity when creating and analyzing an MBOM what types of components were being used/where and for what purpose.

Possible solutions

Need to discuss with WG/core maintainers.

Alternatives

The proposal is specific to component types which is designed to be accommodating of such new types as new types of BOMs are formalized/published.

Additional context

None

@mrutkows mrutkows self-assigned this Jan 8, 2025
@mrutkows mrutkows added the CDX 1.7 related to release v1.7 label Jan 8, 2025
@mrutkows
Copy link
Contributor Author

mrutkows commented Jan 8, 2025

Please note that this exercise SHOULD also include MLBOM component types (for example for building ML models) such as tensor data, tokenizers, chat/prompt templates, etc.

@mrutkows mrutkows changed the title [FEATURE]: Add additional component types for Manufacturing/Formulation artifacts [FEATURE]: Add additional component types for Manufacturing/Formulation/ML artifacts Jan 8, 2025
@jkowalleck jkowalleck added this to the 1.7 milestone Jan 8, 2025
@jkowalleck jkowalleck removed the CDX 1.7 related to release v1.7 label Jan 8, 2025
@mrutkows
Copy link
Contributor Author

mrutkows commented Jan 8, 2025

Additional notes... "tools" are a key concept and are purposeful and ephemeral as they are being brought into specific tasks to perform a function for that task and then are typically not available in other tasks (i.e., removed). This is similar to the concept of a "configuration" file or dataset. Do we need to differentiate ephemeral components in some way?

@jkowalleck
Copy link
Member

These component-types are basically formulation specific, right?
They should not be used in other aspects of software-transparency (like SBOM).

If so, I would implement the JSON/XML/... in a way, that the $.formulation.components[] extends the global-defined component and add the additional options for compoennt-types enum.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants