Repository navigation
ci: propose each new taxonomy version of the occupation names deck - #190
Merged
Merged
Conversation
The deck of new and changed occupation names promises one version per version of Arbetsförmedlingen's labor market taxonomy, but nothing here noticed a new one, and its generator stayed behind in antwika/solid-memo, writing the old layout. scripts/taxonomy_deck.py is that generator, its card rules unchanged, ported to decks/<name>/vN.ttl: it writes the next version beside the newest, carries over what it cannot make (the texts in every app language, the creator's name, the review activities), and adds the contact and release metadata a new version needs. --verify makes the newest version's cards again from the taxonomy and fails unless they come out byte for byte the same; it does for all 3010 cards of v2. The weekly Taxonomy workflow checks the taxonomy's newest version, and when the deck lacks it, makes and checks the next version, opens an issue for it, and a pull request that closes it. A GitHub App's token, its key kept in the labour-market-deck environment, opens the pull request, so CI runs on it; the workflow's own token would start none. docs/deck-library.md says how to set the App up. Closes: #189
ixuz
force-pushed
the
taxonomy-deck-update
branch
from
October 19, 2026 11:29
5222495 to
7850868
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What and why
The deck of new and changed occupation names promises one version per version of Arbetsförmedlingen's labor market taxonomy. Nothing in this repository noticed a new taxonomy version, though, and the deck's generator stayed behind in antwika/solid-memo, where it wrote the old layout. This brings both here, adapted to how decks are published now.
Generator (scripts/taxonomy_deck.py): the old script, with its card rules unchanged, ported to
decks/<name>/vN.ttl.dcterms:createddates stay the same.--checksays whether the taxonomy has a newer version.--verifymakes the newest version's cards again from the taxonomy and fails unless they come out byte for byte the same. Against the live API it reproduces all 3010 cards of v2.Workflow (.github/workflows/taxonomy.yml): runs every Monday, and by hand. When the deck lacks the taxonomy's newest version, it:
--verify, makes the next version, updatesdecks/index.ttl, and runs the library check and the pySHACL cross-check;solid-memo-labour-market-deck, opens the issue "Taxonomy version N is out", and opens a pull request that closes it, or updates the one already open;The App's token is what makes CI run on that pull request: one opened with the workflow's own token starts no workflow. The App's key is a secret of the
labour-market-deckenvironment, which allows onlymain.Docs: docs/deck-library.md covers the deck, the script and the workflow, and how to set up the App. docs/testing.md, the glossary and GOVERNANCE.md mention the new tests, environment and workflow.
The deck stays at deck format 5 and card format 4, as http-status-codes v3 did. Taxonomy version 31, which v2 covers, is still the newest, so the first real run will be for version 32. I tested that path on a simulated v3 (v2 rebuilt at taxonomy version 30, then version 31 added). The library check, the cross-check and the release round-trip tests all accepted it.
Setup outside the code is done, as the taxonomy app describes:
solid-memo-labour-market-deck, with Contents, Issues and Pull requests set to read and write, installed on this repository only;labour-market-deckenvironment, allowingmainonly;LABOUR_MARKET_DECK_CLIENT_IDand its secretLABOUR_MARKET_DECK_PRIVATE_KEY.The App is first used when taxonomy version 32 comes out. A run before that skips the
updatejob.Closes: #189
Checklist
Refs:, notCloses:. Leave this unchecked otherwise.npm run checkpasses (lint, Markdown and spelling included),npm run lint:reusetoo if a file was added, andnpm run crosschecktoo ifns/ordecks/changed. (npm run checkandnpm run lint:reusepass, and so donpm run lint:workflowsand the Python tests; n/a fornpm run crosscheck:ns/anddecks/are unchanged.)docs/is listed in docs/docs.ttl. (no new page)packages/ui/src/i18n/). (n/a: no message changed)ns/was agreed in an issue first; no publishedns/shapes/*/vN.ttlordecks/*/vN.ttlwas edited; generated files were regenerated, not edited.!and aBREAKING CHANGE:footer).npm run check:breakingsees a line ofapi/that goes, but not a feature removed, nor a reader that reads less than before.npm run lint:reuse), or a new deck its line inREUSE.toml; third-party content is credited. (the taxonomy is CC0 1.0, as the deck already states)npm run dev) and tried the change, and considered the user journeys. (n/a: the app is unchanged; the generator was run against the live taxonomy API)type(scope): subject,!and aBREAKING CHANGE:footer if it breaks something), with an imperative subject and a body that explains why (CONTRIBUTING.md).