Skip to content

Commit ad4c206

Browse files
abueideclaude
andcommitted
docs: update CLAUDE.md to match current implementation
- Fix set -e documentation to describe actual pattern per script type - Add wiki/ to project structure tree - Add ARCHITECTURE.md and ENVIRONMENT-SETUP-STRATEGY.md to references - Remove temporal "now" from configuration section Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent f7a0161 commit ad4c206

1 file changed

Lines changed: 16 additions & 3 deletions

File tree

CLAUDE.md

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -469,6 +469,10 @@ act -j ios-plugin-tests
469469
│ ├── e2e-react-native.sh
470470
│ ├── e2e-sequential.sh
471471
│ └── e2e-all.sh
472+
├── wiki/ # Documentation
473+
│ ├── guides/ # User guides and cheatsheets
474+
│ ├── reference/ # CLI, config, and env var references
475+
│ └── project/ # Architecture and strategy docs
472476
├── .github/workflows/
473477
│ ├── pr-checks.yml # Fast PR validation
474478
│ └── e2e-full.yml # Full E2E tests
@@ -590,7 +594,12 @@ Document public APIs exhaustively in REFERENCE.md files, not in code comments.
590594

591595
**Reduce edge cases and unexpected behavior.** Design for the common path. When edge cases arise, validate assumptions early and fail fast rather than adding complex branching logic.
592596

593-
**Scripts fail on error.** All shell scripts use `set -euo pipefail` (or `set -eu` for POSIX sh). Functions return 0 on success, non-zero on failure. Avoid `|| true` except in validation functions where warnings shouldn't block execution.
597+
**Scripts fail on error.** Shell scripts use different strictness levels depending on context:
598+
- Sourced scripts (lib.sh, core.sh, setup.sh): `set -e` (no `-u` due to Node.js package compatibility issues with unset variables)
599+
- User-facing CLIs (android.sh, ios.sh, devices.sh): `set -eu`
600+
- Test scripts: `set -euo pipefail`
601+
602+
Functions return 0 on success, non-zero on failure. Avoid `|| true` except in validation functions where warnings shouldn't block execution.
594603

595604
**Validation warns but doesn't block.** User-facing validation commands (like lock file checksum mismatches) should warn with actionable fix commands but never prevent the user from continuing. The validation philosophy is "inform, don't obstruct."
596605

@@ -816,7 +825,7 @@ act -W .github/workflows/pr-checks.yml
816825

817826
## Configuration
818827

819-
Configuration for both Android and iOS plugins is now managed via environment variables defined in `plugin.json`. These env vars are converted to JSON at runtime for internal use.
828+
Configuration for both Android and iOS plugins is managed via environment variables defined in `plugin.json`. These env vars are converted to JSON at runtime for internal use.
820829

821830
### Android Plugin Environment Variables
822831
- `ANDROID_DEFAULT_DEVICE` - Default emulator
@@ -850,7 +859,9 @@ Configuration for both Android and iOS plugins is now managed via environment va
850859
- Examples: lock file checksum mismatches, missing SDK paths
851860

852861
### Script Safety
853-
- All scripts use `set -euo pipefail` (or `set -eu` for POSIX)
862+
- Sourced scripts: `set -e` (no `-u` due to Node.js package compatibility)
863+
- User-facing CLIs: `set -eu`
864+
- Test scripts: `set -euo pipefail`
854865
- Functions return 0 on success, non-zero on failure
855866
- Validation functions use `|| true` to avoid blocking
856867

@@ -861,4 +872,6 @@ For complete command and configuration references, see:
861872
- `plugins/ios/REFERENCE.md`
862873
- `plugins/react-native/REFERENCE.md`
863874
- `plugins/CONVENTIONS.md`
875+
- `wiki/project/ARCHITECTURE.md`
876+
- `wiki/project/ENVIRONMENT-SETUP-STRATEGY.md`
864877
- `.github/workflows/README.md`

0 commit comments

Comments
 (0)