Add reflected memory files and update git-status-report
Adds gotchas-wezterm and updates gotchas-bash from recent reflections. Prunes old reflected log. Updates MEMORY.md index. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -20,6 +20,10 @@ Using `local` in the main script body (e.g., inside a `for` loop that isn't wrap
|
||||
|
||||
Arithmetic expressions like `((PASS++))` return the *pre-increment* value. When PASS=0, the result is 0 (falsy), which `set -e` treats as a failure and silently exits the script. Use `PASS=$((PASS + 1))` instead — assignments always succeed regardless of the computed value.
|
||||
|
||||
## `set -e` in test harnesses aborts on expected failures
|
||||
|
||||
Test scripts with `set -euo pipefail` silently abort when an assertion helper runs a command expected to fail (non-zero exit). The test runner exits before reporting results. Use `set -uo pipefail` (no `-e`) in test harness scripts and check exit codes explicitly in assertion functions.
|
||||
|
||||
## `file` command marks shell scripts as "executable"
|
||||
|
||||
The `file` command returns strings like "Bourne-Again shell script, Unicode text, UTF-8 text executable" for shell scripts. Grepping for `executable` to detect binaries will false-positive on text scripts. Instead, grep for `binary|image|archive` and additionally check that the output does NOT contain `text`.
|
||||
|
||||
Reference in New Issue
Block a user