# Commit Plan for Pending Files
## Overview
Total files pending: 50 files (14 modified, 36 untracked)
---
## Category 1: Core Implementation Files (src/)
### Modified Core Files (7 files)
- `M src/crypto/mod.rs`
- `M src/error.rs`
- `M src/hsm/mod.rs`
- `M src/lib.rs`
- `M src/metadata/mod.rs`
- `M src/metadata/timing.rs`
- `M src/protocol/handshake.rs`
- `M src/protocol/mod.rs`
- `M src/protocol/session.rs`
### New Core Implementation Files (15 files)
- `?? src/crypto/chacha20poly1305_wrapper.rs`
- `?? src/crypto/constant_time.rs`
- `?? src/crypto/double_ratchet/` (directory)
- `?? src/crypto/hybrid_kex.rs`
- `?? src/crypto/padding.rs`
- `?? src/crypto/pq.rs`
- `?? src/crypto/xeddsa.rs`
- `?? src/hsm/pkcs11_enhanced.rs`
- `?? src/metadata/cover_traffic.rs`
- `?? src/metadata/protector.rs`
- `?? src/performance.rs`
- `?? src/protocol/v2/` (directory)
- `?? src/security/` (directory)
**Commit Strategy:**
- **Separate commits by feature area:**
1. Commit: "feat: enhance crypto module with post-quantum and constant-time operations"
- All `src/crypto/*` files (new + modified)
2. Commit: "feat: add protocol v2 implementation"
- `src/protocol/v2/` + modified protocol files
3. Commit: "feat: enhance HSM support with PKCS#11"
- `src/hsm/*` files
4. Commit: "feat: add metadata protection and cover traffic"
- `src/metadata/*` files
5. Commit: "feat: add security module and performance monitoring"
- `src/security/` + `src/performance.rs`
6. Commit: "refactor: update core library and error handling"
- `src/lib.rs` + `src/error.rs`
---
## Category 2: Test Files (tests/)
### Test Files (9 files)
- `?? tests/cookie_challenge_integration_test.rs`
- `?? tests/dos_metrics_test.rs`
- `?? tests/double_ratchet_integration_test.rs`
- `?? tests/mode_binding_integration_test.rs`
- `?? tests/pq_integration_test.rs`
- `?? tests/security_audit_tests.rs`
- `?? tests/timestamp_validation_bugfix_test.rs`
- `?? tests/timestamp_validation_preservation_test.rs`
- `?? tests/timestamp_validation_bugfix_test.proptest-regressions`
- `?? tests/timestamp_validation_preservation_test.proptest-regressions`
**Commit Strategy:**
- **Single commit after core implementation:**
- Commit: "test: add comprehensive integration and security tests"
- Include all test files together
- This should be committed AFTER the corresponding implementation commits
---
## Category 3: Configuration & Documentation Files
### Configuration Files (3 files)
- `M Cargo.toml`
- `M Cargo.lock`
- `M README.md`
- `M CHANGELOG.md`
### Specification Files (2 files)
- `M specs/B4AE_Protocol_Specification_v1.0.md`
- `?? specs/coq/B4AE_Enhanced_Verification.v`
- `?? specs/states/` (directory)
**Commit Strategy:**
- **Two separate commits:**
1. Commit: "docs: update specifications and formal verification"
- All `specs/*` files
2. Commit: "chore: update dependencies and project metadata"
- `Cargo.toml`, `Cargo.lock`, `README.md`, `CHANGELOG.md`
- This should be the LAST commit after all features are added
---
## Category 4: Android/Kotlin Files
### Android Implementation (4 files)
- `?? b4ae-android-app/app/src/main/java/com/b4ae/B4AEEnhanced.kt`
- `?? b4ae-android-app/app/src/main/java/com/b4ae/app/EnhancedMainActivity.kt`
- `?? b4ae-android-app/app/src/main/res/layout/` (directory)
- `?? b4ae-android/src/lib_enhanced.rs`
**Commit Strategy:**
- **Single commit:**
- Commit: "feat: add enhanced Android bindings and sample app"
- Include all Android-related files together
- Can be committed independently or after core implementation
---
## Category 5: Other Files
### Benchmarks (2 files)
- `M benches/crypto_bench.rs`
- `?? benches/performance_bench.rs`
### Swift Bindings (1 file)
- `?? bindings/swift/Sources/B4AE/B4AEEnhanced.swift`
### Scripts (1 file)
- `?? scripts/performance_test.sh`
### Property Test Regressions (1 directory)
- `?? proptest-regressions/`
### Temporary/Analysis Files (3 files)
- `?? GIT_STATUS_ANALYSIS.md`
- `?? pending_files.txt`
- `? elara` (unknown file/directory)
**Commit Strategy:**
- **Benchmarks:** Commit: "perf: add comprehensive performance benchmarks"
- Include both benchmark files
- **Swift Bindings:** Commit: "feat: add Swift language bindings"
- Single file commit
- **Scripts:** Commit: "chore: add performance testing script"
- Single file commit
- **Property Test Regressions:** Commit: "test: add proptest regression data"
- Include the directory
- **Temporary Files:** **DO NOT COMMIT**
- Add to `.gitignore` or delete:
- `GIT_STATUS_ANALYSIS.md`
- `pending_files.txt`
- `elara` (investigate first)
---
## Recommended Commit Order
1. **Core Implementation (6 commits)** - Foundation features
2. **Tests (1 commit)** - Verify implementations
3. **Specifications (1 commit)** - Document the protocol
4. **Android Bindings (1 commit)** - Platform support
5. **Swift Bindings (1 commit)** - Platform support
6. **Benchmarks (1 commit)** - Performance validation
7. **Scripts (1 commit)** - Tooling
8. **Property Test Regressions (1 commit)** - Test data
9. **Configuration & Metadata (1 commit)** - Final updates
**Total: 15 commits**
---
## Files to Exclude from Commits
These files should be added to `.gitignore` or removed:
- `GIT_STATUS_ANALYSIS.md` (temporary analysis file)
- `pending_files.txt` (temporary status file)
- `elara` (needs investigation - unknown file/directory)
---
## Notes
- Each commit should have a clear, descriptive message following conventional commits format
- Run tests after each implementation commit to ensure nothing breaks
- Update `CHANGELOG.md` in the final commit to reflect all changes
- Consider creating a feature branch for this work if not already on one
- The proptest-regressions directories contain test case data and should be committed