fix(executor,pkginfo): stabilize hook diagnostics and dependency roots (0.0.55) - #39
Merged
Merged
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.
What changed
print,io.write,io.stderr:write, andlog.erroroutput per executor, retain a bounded 16 KiB tail, repair invalid UTF-8, and always return a semantic error when a hook returnsfalse.ExecutionContext::dependency_store_rootsfor dependencies owned by a host store outside the xlings runtime graph.<root>/<namespace>-x-<name>/<exact-version>paths. Valid resolver records remain authoritative; invalid records fail closed.0.0.55.Why
falseproduced an empty error. Users therefore saw an emptyE_INTERNALand lost the diagnostic that explained the package failure.mcpp.depsis a separate host dependency domain. Its payload can live in an ordered shared registry store that is neither the current package store nor an xlings runtime dependency record.The previous #514 fallback guessed through ambient directories. That is not a valid authority boundary when same-name packages and several runtime payloads coexist.
Compatibility and authority boundary
tool_payload_dirkeeps its existing compatibility path.$MCPP_HOMEdiscovery or inference was added.Validation
PkgInfo_*: 11/11 passed.mcpp test: 4 test executables, 133 tests passed, 0 failed.git diff --checkpassed;mcpp.lockis unchanged.Downstream
xlings will consume the released
0.0.55tag in its stability-regression recovery PR and provide the end-to-end CLI/interface coverage for both issues.Fixes openxlings/xlings#513
Fixes openxlings/xlings#514