Skip to content

Require a recorded source for every bundled image and media file #8985

Open

Description

@mengw15

Task Summary

Part of #8800. Two gaps let these files in unnoticed:

  • The license header check (check-header.yml) skips binary files, so an image or video can be added without anyone recording where it came from.
  • Nothing checks that files .licenserc.yaml excludes with the comment "see LICENSE file for attribution" are actually listed in LICENSE. That is how jupyter-logo.svg slipped through on release/v1.3.

Proposed fix:

  1. Add a provenance manifest at the repository root, with one entry per image or media file: its path, its origin (project-made, third-party or unknown), and for third-party files the source and licence. The manifest ships in the source release, so release voters can check it.
  2. Add a step to check-header.yml that fails when:
    • an image or media file in the repository has no manifest entry;
    • a third-party entry is missing from LICENSE, or from frontend/LICENSE-binary for files under frontend/;
    • a path that .licenserc.yaml excludes as "see LICENSE file for attribution" is missing from LICENSE.
  3. Add a test_*.sh for the check under .github/scripts/, so the existing infra job runs it.

This does not have to wait for the audit in #8984. Files whose source is not known yet are entered as unknown. New files are covered right away, the unknown entries become the audit's to-do list, and a DISCLAIMER-WIP, if one is needed, can point to them.

Task Type

  • Refactor / Cleanup
  • DevOps / Deployment / CI
  • Testing / QA
  • Documentation
  • Performance
  • Other

Activity

  1. added theissue type on Oct 14, 2026
  2. github-actions commented on Oct 14, 2026

    @github-actions
    Contributor

    👋 Thanks for opening this issue, @mengw15!

    It looks like the issue description doesn't quite follow our template yet:

    • This issue doesn't appear to use one of our templates (Bug, Feature, or Task). Please open it using a template so the required details are captured.

    Filling out the template helps reviewers understand and triage your contribution faster. Please edit the description to complete it. This message will disappear automatically once the template is followed.

    You can find the template prompts by editing the description, or see CONTRIBUTING.md for the full contribution flow.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions