refactor(guard): use semantic command identifiers - #236
Draft
seonghobae wants to merge 2 commits into
Draft
Conversation
|
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: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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.
Owner and bounded context
ContextualWisdomLab/EgressWeaveowns the repository-local fail-closed autonomous product guard. Its trusted subprocess seam still exposed organization-owned generic identifiers (_run,args,cwd,env,text,check) even though the bounded context provides explicit command-execution meanings.TDD lineage
main@978f65172a23d69a9d92bf58bbcbe363a459238f.c2f2c521e5559fb16eb19891943e2a5bd43e9ca7adds an AST contract requiring_run_command(command_arguments, *, working_directory, command_environment, text_mode, check_result)and rejecting the old_rundefinition. Production remained unchanged at that exact RED head.e2cb6a4f0c106e13f2c2af0c4ee7a4a602705e8erenames the private helper and propagates every repository-local caller through ordinary non-force history.Compatibility boundary
The underlying Python
subprocess.run(...)keywords (cwd,env,check,text) are externally defined standard-library API names and remain unchanged at that adapter boundary. EgressWeave-owned identifiers immediately outside the adapter are semantic. No workflow command, CLI flag, patch format, Git invocation, persisted data, database object, network policy, or release contract changes.Safety / verification
scripts/ci/hourly_product_guard.pyandtests/test_hourly_product_guard_semantic_identifiers.py.Merge contract
Keep Draft until the unchanged exact head has fresh terminal-success required checks, valid current-head review findings and threads are resolved, and the repository's independent non-author approval / ordinary merge policy is satisfied. Do not transfer predecessor evidence, self-approve, force-push, or bypass protection.