Repository navigation
docs(licensing): record the provenance of every bundled image in PROVENANCE.yaml - #9017
CaroFernando wants to merge 1 commit into
Conversation
Automated Reviewer SuggestionsBased on the
|
…ENANCE.yaml Binary files cannot carry a license header, so nothing recorded where the 236 images and media files in the repository came from. Add a manifest at the repository root with one entry per file: its origin (project-made, third-party or unknown), and for third-party files the source and licence. Entries were filled from git history (the commit that wrote each file's current content), embedded metadata, the PRs that added the files, and a visual review: - project-made: Texera logos, UI screenshots and tutorial recordings, the UDF icons redrawn in apache#5686, and the sample media / comment icon that their PRs describe as original - third-party: files already listed in LICENSE, plus the Apache Arrow, AsterixDB and Hadoop logos, the Angular CLI favicon, a Noun Project icon (TypeCasting.png), and a Freepik icon (DumbbellPlot.png) and an Adobe Stock icon (SankeyDiagram.png) that must be replaced - unknown: everything else, with the evidence found so far Part of apache#8984.
778d526 to
0b5c61a
Compare
|
/request-review @mengw15 @parshimers |
There was a problem hiding this comment.
Warning
Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.
Copilot review overview
3 open issues
What changed in this PR
Adds a repository-wide provenance manifest for all bundled image/media assets so their source and licensing information is recorded outside of binary files (per #8800 / #8984), in a format intended to be machine-checked (per #8985).
Changes:
- Introduces
PROVENANCE.yamlwith an entry for each tracked image/media file (236 total). - Records
origin, and where applicable,source,license, and evidence/next steps innotes. - Includes guidance comments for maintaining the manifest going forward.
| File | Description |
|---|---|
| PROVENANCE.yaml | New provenance manifest covering all tracked image/media assets, including origin classification and licensing metadata. |
Review effort: Lite
| files: | ||
| - path: docs/system-screenshot.png | ||
| origin: project-made | ||
| notes: "Screenshot of the Texera workflow editor." | ||
| - path: frontend/src/assets/Tutor_End_Sample.gif | ||
| origin: project-made | ||
| notes: "Screen recording of the Texera UI for the tutorial." |
| license: "unknown; Noun Project icons are usually CC-BY-3.0" | ||
| notes: "Author and licence still to be confirmed; not yet listed in LICENSE." |
| - path: frontend/src/assets/Tutor_Intro_Drag_Result.gif | ||
| origin: project-made | ||
| notes: "Screen recording of the Texera UI for the tutorial." | ||
| - path: frontend/src/assets/Tutor_Intro_Drag_Srouce.gif |
|
Thanks for putting this together! I'm wondering whether we should keep PROVENANCE.yaml as a permanent file. I haven't seen this approach in other Apache projects, where third-party assets are typically documented in LICENSE. @parshimers, is this an acceptable or standard practice for ASF releases, or should we use this file only for auditing and keep the final attribution in LICENSE? |
|
I think we should just have it for this process. LICENSE/NOTICE is the final product. However as a tool I really like it. |
|
Makes sense, thanks both. I'll treat One follow-up: #8985 proposes a permanent manifest plus a CI check. If we're not keeping the manifest, should #8985 instead check that every image is either listed in LICENSE or added by a PR that states it is project-made, or should it be dropped? |


What changes were proposed in this PR?
Binary files can't carry a license header, so nothing in the repository records where its images and media files came from (see #8800). This PR adds
PROVENANCE.yamlat the repository root, with one entry for each of the 236 image and media files tracked in git:pathorigin:project-made,third-partyorunknownsourceandlicense, for third-party filesnotes: the evidence for the entry, or what still has to happenEntries were filled from:
Summary:
LICENSE; 7 need follow-up, listed in #8984)The
unknownentries are the remaining audit work for #8984. If the release goes theDISCLAIMER-WIProute agreed in #8800, they are the list the disclaimer can point to. The format follows the manifest proposed in #8985, so that issue's CI check can read this file.This PR only records provenance. It does not replace any image or edit
LICENSE; that follow-up work is tracked in #8984.Any related issues, documentation, discussions?
Part of #8984. Related: #8800, #8985, #8982 / #8999. Audit status and plan: #8984 (comment)
Interaction with #8999: the 13 vendor-logo entries are currently
unknownand noted as being replaced under #8982. If #8999 merges first, I'll regenerate those entries here as project-made; if this PR merges first, #8999 (or a small follow-up) should update them.How was this PR tested?
Documentation-only change, no code. Checks run:
Output:
236 True True, andinvalid: 0from the header check.Was this PR authored or co-authored using generative AI tooling?
Generated-by: Claude Code (claude-opus-5-5)