SchemaStore copy
datasets/schemastore-copyChecked by automation only
still a draft
Written 2026-10-28 by ktl-librarian (automation). Last checked 2026-10-28 by ktl-librarian (automation).
The full record
- Checks
- 2026-10-28 by
ktl-librarian(automation)
- 2026-10-28 by
- Sources
- Pointed to by
- github-actions LinkML schema (derived from)
- License and attribution (related to)
- Move the upstream pins (about)
- Test data and schema tests (references)
- Upstream watch (upstream-watch.yaml) (related to)
- Graph
- Open this concept in the knowledge graph
- IRI
https://w3id.org/lmodel/github-actions/knowledge/datasets/schemastore-copy- Licence
- Apache-2.0
- Files
- MarkdownJSON-LDSource on GitHubHistory on GitHub
SchemaStore copy
Section titled “SchemaStore copy”NOTICE says that src/github_actions/schema/schemastore/ holds a copy of two files from JSON Schema Store, retrieved from SchemaStore’s tree at commit f7c2f3bcb512651bd980ed6896639ea8ded9ddf0.1 github-workflow.json is the schema of a GitHub Actions workflow file, and github-action.json is the schema of an action’s metadata file. SchemaStore’s own LICENSE and NOTICE sit beside them, copied from the root of the same commit. NOTICE says that every file is identical to its counterpart there, and that the files are licensed under the Apache License 2.0 and carry the notice “JSON Schema Store, Copyright 2015-Current Mads Kristensen and Contributors”.
The two schemas give their $id as https://json.schemastore.org/github-workflow.json and https://json.schemastore.org/github-action.json, and are written in JSON Schema draft-07. The README says that the schema header pins the SchemaStore commit they were copied from.
Never edited here
Section titled “Never edited here”CONTRIBUTING.md says to leave the folder as upstream wrote it, and to replace both files from one SchemaStore commit instead.2 The pre-commit configuration excludes the folder, so that no hook rewrites a file that the upstream watch matches by git object hash.
How the schema uses it
Section titled “How the schema uses it”tests/test_schema_rules.py compares the schema with the copy:3
- the
gha_permissionpattern admits every scope and level that SchemaStore’s workflow schema lists, refuses the leveladmin, and admits SchemaStore’s shorthands; - the
GhaActionRuntimeenum differs from SchemaStore’s runtimes only bynode12andnode16, which SchemaStore still accepts and GitHub’s metadata syntax page no longer lists; - the
GhaWorkflowInputTypeenum holds the input types that SchemaStore lists; - the
triggerspattern admits every event that SchemaStore names; - the key pattern for a job, an input, an output or a secret, and the
usespattern of a calling job, are SchemaStore’s.
The upstream watch
Section titled “The upstream watch”scripts/check_upstream_release.py pins the commit as PINNED_COMMIT, with each copied file’s path in SchemaStore’s tree.4 It compares every copied file with its blob at that commit by git object hash, so it downloads only listings. It reports when SchemaStore’s default branch has changed either schema, and when a copied file differs in a way that KNOWN_DIFFERENCES does not list. That set is empty, because the copy is exact. Upstream watch runs the script weekly, and Move the upstream pins says what to do when it reports.