Skip to content

docs(hy_worldplay): add HY-WorldPlay WAN-5B I2V model card #894

docs(hy_worldplay): add HY-WorldPlay WAN-5B I2V model card

docs(hy_worldplay): add HY-WorldPlay WAN-5B I2V model card #894

Workflow file for this run

name: reuse-lint
on:
pull_request:
merge_group:
branches: [main]
push:
branches:
- main
permissions:
contents: read
jobs:
reuse:
name: REUSE 3.3 compliance (repo-wide)
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4
# REUSE 3.3 lint: every file in the repo must have a copyright + license
# identifier, either as an in-file SPDX header or via REUSE.toml.
- name: REUSE lint
uses: fsfe/reuse-action@v5
collateral:
name: OSRB collateral sanity check
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4
- name: LICENSE carries canonical Apache-2.0 text
run: |
set -euo pipefail
# Sentinel strings unique to the canonical Apache-2.0 text — must
# appear in LICENSE even with any preamble in front.
for line in \
"Apache License" \
"Version 2.0, January 2004" \
"http://www.apache.org/licenses/" \
"END OF TERMS AND CONDITIONS" \
"APPENDIX: How to apply the Apache License to your work."
do
if ! grep -qF "$line" LICENSE; then
echo "::error file=LICENSE::missing canonical Apache-2.0 sentinel: $line"
exit 1
fi
done
# LICENSES/Apache-2.0.txt must remain the canonical Apache-2.0
# text (no preamble) so REUSE tooling can reuse it verbatim.
for line in \
"Apache License" \
"Version 2.0, January 2004" \
"END OF TERMS AND CONDITIONS"
do
if ! grep -qF "$line" LICENSES/Apache-2.0.txt; then
echo "::error file=LICENSES/Apache-2.0.txt::missing canonical Apache-2.0 sentinel: $line"
exit 1
fi
done
echo "OK: LICENSE and LICENSES/Apache-2.0.txt carry canonical Apache-2.0 text"
- name: Required OSRB collateral present at repo root
run: |
set -euo pipefail
for f in LICENSE LICENSES/Apache-2.0.txt CONTRIBUTING.md NOTICE REUSE.toml; do
if [ ! -f "$f" ]; then
echo "::error::missing required OSRB file: $f"
exit 1
fi
echo "OK: $f"
done
- name: CONTRIBUTING.md references the DCO / sign-off
run: |
set -euo pipefail
if ! grep -qE "Developer.{1,40}Certificate.{1,10}of.{1,10}Origin|Signed-off-by|sign-off" CONTRIBUTING.md; then
echo "::error::CONTRIBUTING.md does not reference DCO / sign-off"
exit 1
fi
echo "OK: CONTRIBUTING.md references DCO / sign-off"
# Inline SPDX-License-Identifier on first-party source files.
# REUSE.toml provides aggregate coverage so 'reuse lint' is green even
# without inline headers, but inline tags are the OSRB-preferred form
# and catch new files copied in without attribution.
#
# Paths covered by REUSE.toml `override` annotations (vendored upstream
# whose original BSD-3-Clause / Zlib banners are kept verbatim, plus
# generated protobuf stubs) are exempt.
- name: Inline SPDX headers on first-party source files
run: |
set -euo pipefail
excludes='^integrations/omnidreams/ludus-renderer/ludus_renderer/_cpp/cudaraster/'
excludes+='|^integrations/omnidreams/omnidreams/grpc/protos/.*_pb2'
missing_files=()
while IFS= read -r f; do
if printf '%s\n' "$f" | grep -qE "$excludes"; then
continue
fi
if ! head -n 20 "$f" | grep -q "SPDX-License-Identifier"; then
missing_files+=("$f")
fi
done < <(git ls-files \
'*.py' '*.pyx' '*.pyi' \
'*.c' '*.cc' '*.cpp' '*.cxx' \
'*.h' '*.hh' '*.hpp' '*.hxx' \
'*.cu' '*.cuh' '*.inl' \
'*.sh' '*.proto' \
'Dockerfile' '*/Dockerfile' '**/Dockerfile' '*.dockerfile')
if [ "${#missing_files[@]}" -gt 0 ]; then
# Print the list to the raw log so it shows in the step output,
# then emit GitHub annotations so the offending files appear in
# the PR "Files changed" review tab too.
echo
echo "The following ${#missing_files[@]} source file(s) are missing an"
echo "inline 'SPDX-License-Identifier' tag in their first 20 lines:"
echo
for f in "${missing_files[@]}"; do
echo " - $f"
done
echo
# REUSE-IgnoreStart
echo "Add a header like (Python/shell comment style):"
echo " # SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved."
echo " # SPDX-License-Identifier: Apache-2.0"
echo "C/C++/CUDA files use '//' line comments with the same two tags."
echo
for f in "${missing_files[@]}"; do
echo "::error file=$f,line=1,title=Missing SPDX header::Add 'SPDX-License-Identifier: Apache-2.0' (and matching SPDX-FileCopyrightText) to the first 20 lines of this file."
done
# REUSE-IgnoreEnd
echo "::error title=Missing SPDX headers::${#missing_files[@]} source file(s) missing inline SPDX header"
exit 1
fi
echo "OK: every tracked source file carries an inline SPDX-License-Identifier"
- name: No NVIDIA proprietary banners
run: |
set -euo pipefail
# Catches the NVIDIA proprietary banner that pre-dates the
# Apache-2.0 distribution decision. Excludes the workflow file
# itself (which references the strings as grep patterns) and the
# maintaining-oss-state skill (which documents these patterns).
if git grep -nI \
-e "NVIDIA CORPORATION is strictly prohibited" \
-e "proprietary rights in and to this software" \
-- \
':!.github/workflows/reuse-lint.yml' \
':!agentic/skills/maintaining-oss-state/SKILL.md'; then
echo "::error::NVIDIA proprietary banner found in repository"
exit 1
fi
echo "OK: no legacy proprietary banners"