Skip to content

Extend spdx test to consider an extend traceability matrix - #318

Draft
pellecchialuigi wants to merge 9 commits into
mainfrom
issue-311
Draft

Extend spdx test to consider an extend traceability matrix#318
pellecchialuigi wants to merge 9 commits into
mainfrom
issue-311

Conversation

@pellecchialuigi

Copy link
Copy Markdown
Collaborator

Extend the traceability matrix generated and exported as part of the test_spdx_api_validation to consider all the possible relationships between work items supported by BASIL.
The test will generate an export jsonld in the CI artifacts.

Solves #311

pellecchialuigi and others added 9 commits September 4, 2026 13:01
…ationship that is supported in BASIL. For work items like requirements or documents, for the one we can define an infinite level of nesting, we consider a fixed maximum nested levels to 2.

Signed-off-by: Luigi Pellecchia <pellecchia.luigi@gmail.com>
Signed-off-by: Luigi Pellecchia <pellecchia.luigi@gmail.com>
Signed-off-by: Luigi Pellecchia <pellecchia.luigi@gmail.com>
…AC author signature to SBOMs.

SPDX 3.0.1 relationship mapping
Map SPDX 2.3 names and pre-1.8.12 BASIL UI abbreviations to SPDX 3.0.1
camelCase RelationshipType values. The UI dropdown now offers the SPDX
3.0.1 vocabulary; a 1.8.12 migration rewrites documents and
documents_history, and unknown leftovers become other. Export
normalizes stored values the same way so mixed legacy data still
produces valid SPDX 3.0.1.

Richer SPDX traceability graph
Emit additional SPDX relationships that already exist in BASIL
mappings: library contains / hasInput / hasSpecification each Software
Component; Software Component hasDocumentation and hasSpecification on
its reference document; nested documents and software requirements also
use contains. Test Cases generate, hasTest, and hasOutput Test Runs;
each run is testedOn the Software Component, which in turn hasTest the
run.

SBOM author signature
HMAC-SHA256 (HS256) the unsigned JSON-LD with the exporting user's
spdx_signature and attach ITU-T X.590 JSS plus a CycloneDX-style
signature object. Person.name is now the username so the signature
secret is no longer used as a display name. Strip in-document signature
fields before spdx3-validate because SPDX 3.0.1 schema rejects them.

User profile and login
Persist login fields to localStorage immediately with null-safe
strings. Keep SPDX signature save feedback in the profile modal, and
harden the Cypress flow that edits that signature.

Demo database migrations
run_demo.sh --db-migration / -m applies postgres_<version>.sql after
the database is up and before the API starts, so upgrades that reuse
basil-db-vol can bring the schema forward.

Signed-off-by: Luigi Pellecchia <pellecchia.luigi@gmail.com>
Signed-off-by: Luigi Pellecchia <pellecchia.luigi@gmail.com>
Signed-off-by: Luigi Pellecchia <pellecchia.luigi@gmail.com>
Updated the build workflow to install graphviz and modified the SPDX upload step to include additional file types.
… png

Signed-off-by: Luigi Pellecchia <pellecchia.luigi@gmail.com>
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.

1 participant