Skip to content

Add fail-closed runtime dependency license evidence - #91

Open
Claudio9701 wants to merge 2 commits into
release/trusted-publishingfrom
security/license-evidence
Open

Add fail-closed runtime dependency license evidence#91
Claudio9701 wants to merge 2 commits into
release/trusted-publishingfrom
security/license-evidence

Conversation

@Claudio9701

Copy link
Copy Markdown
Collaborator

Outcome

Adds deterministic, fail-closed license evidence for the installed UrbanPy runtime closure while explicitly preserving FOSSA as the independent EL-BID compliance gate.

What changed

  • walks active runtime requirements from installed UrbanPy metadata rather than reporting unrelated dev tools
  • prefers PEP 639 expressions and normalizes legacy classifier evidence without hiding compound terms
  • requires every exact observed license string to be reviewed in license-policy.toml
  • fails on new packages, unknown metadata, or changed license strings
  • records narrow primary-source dispositions for defopt (missing wheel metadata; official MIT license) and text-unidecode (explicitly selects its offered GPLv2+ option)
  • uploads locked requirements and JSON license evidence on every CI run
  • includes the same report with the release CycloneDX SBOM and attested distributions
  • documents the remaining FOSSA/legal reconciliation responsibility

Verification

  • 89 locked runtime packages approved with deterministic evidence
  • 3 closure/policy regression tests passed
  • full suite: 62 passed, 2 deselected
  • Ruff clean
  • Trunk checked 130 files with no issues

Important compliance boundary

This engineering policy does not dismiss or suppress any of FOSSA's 95 reported items. FOSSA remains required and blocking. EL-BID maintainers must reconcile its wider source, development, generated, and vendored findings and obtain legal disposition where needed.

Stack

Base: #89
Roadmap: #61
Parent: #65

Closes #90

@Claudio9701
Claudio9701 requested a review from a-regal as a code owner August 10, 2026 05:02
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