Registry contract verification

Result: 64/64 checks passed; 0 failed.

Checked 3 Draft 2020-12 schemas, positive metadata fixtures, missing required fields, conditional executable requirements, path/version/role-enum restrictions and selected cross-field cases. These checks do not exercise a registry, TUF signatures, dependency resolution, payload integrity or hardware. Example digests, source/provider IDs and URLs are synthetic and not installable artefacts.

Checks

  • PASS: dependency cannot float
  • PASS: duplicate dependency rejected
  • PASS: duplicate payload paths rejected
  • PASS: fixture selected metadata semantics
  • PASS: implementation requires build_provenance
  • PASS: implementation requires dependency_lock
  • PASS: implementation requires implementation
  • PASS: implementation requires runtime
  • PASS: implementation requires sbom
  • PASS: licence file resolves
  • PASS: listed firmware cannot be empty
  • PASS: package-lock meta-schema
  • PASS: package-lock positive fixture
  • PASS: package-lock requires approval
  • PASS: package-lock requires created_at
  • PASS: package-lock requires lock_version
  • PASS: package-lock requires packages
  • PASS: package-lock requires roots
  • PASS: profile cannot contain device implementation
  • PASS: reject path ../escape
  • PASS: reject path /absolute
  • PASS: reject path a/../../escape
  • PASS: reject path a
  • PASS: reject payload role skillx
  • PASS: release-manifest meta-schema
  • PASS: release-manifest positive fixture
  • PASS: release-manifest requires changelog_path
  • PASS: release-manifest requires compatibility
  • PASS: release-manifest requires dependencies
  • PASS: release-manifest requires device_targets
  • PASS: release-manifest requires display_name
  • PASS: release-manifest requires evidence
  • PASS: release-manifest requires issues_url
  • PASS: release-manifest requires kind
  • PASS: release-manifest requires licence
  • PASS: release-manifest requires limitations
  • PASS: release-manifest requires maintainers
  • PASS: release-manifest requires manifest_version
  • PASS: release-manifest requires migration_notes_path
  • PASS: release-manifest requires package_id
  • PASS: release-manifest requires payload
  • PASS: release-manifest requires permissions
  • PASS: release-manifest requires provides
  • PASS: release-manifest requires publisher_id
  • PASS: release-manifest requires registry_id
  • PASS: release-manifest requires released_at
  • PASS: release-manifest requires source
  • PASS: release-manifest requires summary
  • PASS: release-manifest requires support_url
  • PASS: release-manifest requires tags
  • PASS: release-manifest requires version
  • PASS: release-status meta-schema
  • PASS: release-status positive fixture
  • PASS: release-status requires advisories
  • PASS: release-status requires expires_at
  • PASS: release-status requires lifecycle
  • PASS: release-status requires reason
  • PASS: release-status requires release
  • PASS: release-status requires reviews
  • PASS: release-status requires sequence
  • PASS: release-status requires status_version
  • PASS: release-status requires support_contact
  • PASS: release-status requires support_state
  • PASS: release-status requires updated_at