fix(install): validate packaged user skill assets - #286
Closed
hyperb1iss wants to merge 1 commit into
Closed
hyperb1iss wants to merge 1 commit into
hyperb1iss wants to merge 1 commit into
Conversation
Release archives declare user_skill_files, but the strict Rust installer rejected that field before bootstrap. Validate its nonzero count and asset root while retaining manifests from before user skills shipped. Keep unknown-field rejection and reject null counts, mismatched trees, and empty declared assets. Cover current and legacy payload validation. Co-Authored-By: Nova (GPT-6) <noreply@openai.com>
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueComment |
15 tasks
Owner
Author
|
Closing as superseded. The v0.5.1 release commit on main (89951c1) landed this same fix in a more complete form: it carries the user_skill_files field, the require_user_skills split between candidate and installed manifests, and the same three test functions by name. Rebasing this branch onto main left only duplicate tests, so there is nothing left to merge. #287 has been retargeted directly at main. ~ via nova ⚡ |
15 tasks
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 this changes
The Linux installer accepts the user-facing skill inventory generated by packaging and verifies its required directory and exact file count. Older manifests that omit the field remain compatible.
Why
The package generator includes
user_skill_files, but the installer's strict parser did not recognize it. Installation stopped at manifest validation before it could check or stage an otherwise valid bundle.Verification
just verifypasses locally (including allocation contracts);just check --lockedalso passes.just denypasses (not applicable; no dependency or license changes)just ui-testandjust ui-buildpass (not applicable; no UI source changes)just sdk-lint,just sdk-check, andjust sdk-buildpass (not applicable; no SDK changes)just python-verifypasses (not applicable; no Python changes)just compat-checkpasses (not applicable; no device database changes)just docs-buildpasses (not applicable; no documentation changes)cd docs && zola checkpasses (not applicable; no documentation changes)just e2e-buildpasses with the normal Servo stack (not applicable; no renderer or daemon integration changes)just e2e-build-cpupasses (not applicable; no renderer changes)just e2epasses against the Servo stack (not applicable to manifest parsing)--no-service, and the installed CLI reports 0.5.1. Service startup and cloud journeys remain separate checks.Notes for reviewers
The new field remains optional only for older manifests. When present, it must be a positive integer and match the packaged tree. Unknown-field rejection and the existing member, hash, path, and filesystem checks remain in force.