mirror of
https://github.com/Tencent/WeKnora.git
synced 2026-08-30 16:53:21 +08:00
8f4b3333f2
hasCommandSubstitution recompiled its three regexps with regexp.MustCompile on every call, and ValidateArgs calls it once per argument — so validating an N-arg command compiled 3N patterns. Hoist them to a package-level slice compiled once at init. Behavior is unchanged (same patterns); covered by the existing TestScriptValidator_ValidateArgs / ValidateAll tests. Benchmark, ValidateArgs with 8 args (-benchmem): before: 16374 ns/op, 40142 B/op, 505 allocs/op after: 2092 ns/op, 32 B/op, 1 allocs/op Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>