feat(protected-mock): add subset fixture matching and harden mockd startup - #93
Open
dmorosanu wants to merge 1 commit into
Open
feat(protected-mock): add subset fixture matching and harden mockd startup#93dmorosanu wants to merge 1 commit into
dmorosanu wants to merge 1 commit into
Conversation
dmorosanu
requested review from
akshaylive,
bai-uipath,
tmatup and
uipreliga
as code owners
August 7, 2026 15:54
|
Claude finished @dmorosanu's task in 1m 36s —— View job Code Review in Progress
|
Contributor
Author
|
Live validation against the real skills #2503 corpus (codex/remove-runtime-seal @ efd1fe6e2) on the Linux VM, image rebuilt from this branch, docker driver with agent isolation, Bedrock claude-sonnet-4-6:
Two rollout blockers found in the corpus x harness combination (not defects of this diff, filed for the #2503 migration):
|
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.

Stacked on #87. Ports the load-bearing pieces of #90 onto #87's protected_mock so #87 becomes the single vehicle and #90 can be closed as superseded.
What is ported
match_mode: subset(server.py): token-subset matching evaluated below exact/normalized, scanned in fixture-file order, first match wins, duplicates legal (an earlier rule shadows a later one), empty or noise-only rule argv rejected at load. Real-agent measurement showed finite matching rejects 37% of actualuipinvocations over benign extra flags; the skills troubleshoot corpus (Migrate troubleshoot fixtures to protected mocks skills#2503, 297 scenarios) is regenerated against this schema, replay-validated on 379 recorded argvs.--outputnoise flag no longer swallows a following flag (deploy --output --delete-allno longer normalizes to baredeploy), and--output=<empty>is dropped atomically instead of consuming the next unrelated token.What is deliberately NOT ported
Validation
uip rpa get-errors --output json --limit 5 --folder-key demo): the subset rule answered through the full mockd RPC path and the task passed 1/1 (exact/normalized cannot match that argv, so the pass is attributable to the ported matcher). The same task against the pre-port image fails with mockd exiting at fixture load - the old matcher rejectsmatch_mode: subset, which also demonstrates the diagnosability gap the startup hardening addresses.