Repository navigation
Plugin records as SSOT: generator, homepage_url, per-repo descriptions - #11
Merged
Merged
Conversation
astrojuanlu
force-pushed
the
plugin-records
branch
3 times, most recently
from
October 22, 2026 08:53
589a6c5 to
6b44899
Compare
astrojuanlu
marked this pull request as ready for review
October 22, 2026 08:53
Replace the hand-maintained per-repo tfvars with generated files projected from hand-written plugin records - the single source of truth for creation-time repo and snap metadata. - plugins/<plugin>-obs-studio.json records (validated against plugins/schema.json) plus normalized one-paragraph-per-line .description.md sidecars - scripts/generate.py projects records into repos/<snap_name>.tfvars (snap_name + summary only); generated files carry DO-NOT-EDIT headers and CI enforces freshness via Generated files are up to date. - module derives repo_name and homepage_url from snap_name; GitHub description = summary, homepage = https://snapcraft.io/<snap_name> - records are directly copier-consumable (JSON is valid YAML): the template computes all derived fields (title, website default, package_url); the fill step supplies only plugin_name (from the filename) and the description sidecar - justfile gains gen and check-generated; workflow validate job runs them Assisted-by: OpenRouter:z-ai/glm-5.3-flash pi
The global '*.tfvars' ignore swallowed the generated per-repo inputs, so they were never committed; deleting the old placeholder files left no tracked file under repos/ and CI checkouts lost the directory entirely (cp: cannot stat 'repos'). Negate the ignore for repos/ and add the four files; make check-generated fail with a clear message when repos/ is missing. Assisted-by: OpenRouter:z-ai/glm-5.3-flash pi
astrojuanlu
force-pushed
the
plugin-records
branch
from
October 22, 2026 08:57
e34b6b5 to
2120e09
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.
Plugin records as the single source of truth for creation-time metadata.
plugins/<plugin>-obs-studio.json(validated againstplugins/schema.json) plus normalized.description.mdsidecarsscripts/generate.pyprojects records intorepos/<snap_name>.tfvars(tofu inputs only); DO-NOT-EDIT headers, freshness enforced byjust check-generatedin CIrepo_nameandhomepage_urlfromsnap_name; GitHub description =summary, homepage =https://snapcraft.io/<snap_name>plugin_name(from the filename) and the description sidecarGenerated repos were verified against the live repos in
..(snapcraft.yaml matches modulo per-release version and build-recipe hand-tuning).