ci: guard shared TypeScript extension versions#95
Draft
Jess Sullivan (Jesssullivan) wants to merge 4 commits into
Draft
ci: guard shared TypeScript extension versions#95Jess Sullivan (Jesssullivan) wants to merge 4 commits into
Jess Sullivan (Jesssullivan) wants to merge 4 commits into
Conversation
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.
Summary
metadata.jsonordering and yanksaspect_rules_ts3.8.4depstag identity:name,ts_version,ts_version_from, andts_integritydev_dependency = Trueandisolate = Truesemantics outside the shared extension graphnpm run validateentrypointCorrective scope
This closes the adversarial-review findings on hidden valid Starlark and incomplete tag identity. Coverage includes
getattr(proxy, "deps"), assigned methods, list/tuple/dict-carried proxies, dev-first composite concealment, simple proxy aliases, repository-management builtins, multiline/comments, strings containing call-shaped text, same-version/different-integrity conflicts,ts_version_fromidentity, tag-name grouping, defaults, unsorted versions, greatest-version yanks, and all-yanked modules.Canonical Bazel 8
@@aspect_rules_ts+and Bazel 7@@aspect_rules_ts~<version>repository names are supported. Unknown futureaspect_rules_tscanonical naming schemes fail closed.Validation
npm run validateaspect_rules_tstag identities across one repository name validatenpm run smoke:resolvenpm run smoke:stage1-consumergit diff --checkandgit diff --cached --checkgit verify-commit HEADSupported syntax and residual limits
The guard deliberately does not evaluate arbitrary Starlark. It accepts direct canonical
use_extensionassignments, direct.deps(...)tags, simple identifier aliases, literal/simple-string values, and directuse_repo/inject_repo/override_repocalls.Dynamic or embedded proxies, container carriage,
include()fragments, augmented/destructuring assignments, and unknown extension/tag options fail closed.ts_version_fromaccepts local labels and exact@@canonical labels; apparent external labels and@//labels fail closed because their canonical identity is ambiguous under Bzlmod selection.Scope
This remains a draft. It changes only the static registry guard, its fixtures, and validation wording. It does not modify module entries, release metadata, or registry publication state.