21 lines
892 B
Markdown
21 lines
892 B
Markdown
# Implementation: fix-migrate-find-precedence
|
|||
|
|
|
||
|
|
## Bug
|
||
|
|
`migrate-project.sh` uses `find` without parentheses around `-name` tests combined with `-prune`, causing `-prune` to bind only to the last `-name` test. This results in incorrect pruning — some directories that should be pruned are still traversed.
|
||
|
|
|
||
|
|
## Fix
|
||
|
|
Added parentheses around the `-name` tests in the `find` command at `scripts/migrate-project.sh:108`:
|
||
|
|
|
||
|
|
```diff
|
||
|
|
- find . -name .git -o -name node_modules -o -name .automaton -prune ...
|
||
|
|
+ find . \( -name .git -o -name node_modules -o -name .automaton \) -prune ...
|
||
|
|
```
|
||
|
|
|
||
|
|
This ensures `-prune` applies to the entire OR-group, not just the last `-name` test.
|
||
|
|
|
||
|
|
## Files Changed
|
||
|
|
- `scripts/migrate-project.sh` (line 108): added `\(` and `\)` around the `-name` group
|
||
|
|
|
||
|
|
## Tests
|
||
|
|
No new tests added — shell script syntax change only. Verified with `bash -n scripts/migrate-project.sh`.
|