forked from ANYTECHS/clips-backend
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcommit-changes.sh
More file actions
75 lines (62 loc) · 2.11 KB
/
commit-changes.sh
File metadata and controls
75 lines (62 loc) · 2.11 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!/bin/bash
echo "Creating commit for fiat payout encryption feature..."
echo ""
# Stage all changes
echo "Staging all changes..."
git add -A
echo ""
echo "Files to be committed:"
git status --short
echo ""
echo "Creating commit..."
git commit -m "feat(payouts): add secure fiat payout method storage with encryption
Implements encrypted storage for bank account information with the following features:
Core Implementation:
- Add PayoutMethod model with AES-256-GCM encrypted fields
- Create PayoutMethodService with encryption/decryption logic
- Add PayoutMethodController with REST API endpoints
- Implement DTOs for create/update operations
- Add comprehensive test suite with full coverage
Security Features:
- AES-256-GCM encryption at rest
- Unique IV per encryption operation
- Authenticated encryption (AEAD)
- Data minimization (only last 4 digits in plaintext)
- JWT authentication on all endpoints
- User isolation and access control
- Soft delete for audit trail
API Endpoints:
- POST /payout-methods - Create payout method
- GET /payout-methods - List all methods
- GET /payout-methods/default - Get default method
- GET /payout-methods/:id - Get specific method
- PUT /payout-methods/:id - Update method
- DELETE /payout-methods/:id - Delete method
Documentation:
- FIAT_PAYOUT_SECURITY.md - Complete security documentation
- PAYOUT_ARCHITECTURE.md - Architecture diagrams and data flows
- QUICK_START_PAYOUT_METHODS.md - 5-minute setup guide
- IMPLEMENTATION_CHECKLIST.md - Implementation status
- src/payouts/README.md - Developer quick reference
Database Changes:
- Added PayoutMethod table with encrypted fields
- Added migration file
- Updated Prisma schema with relationships
Files Changed:
- New: 13 files (services, controllers, DTOs, tests, docs)
- Modified: 3 files (schema, module, env.example)
Closes: #[issue-number]
Labels: payout, security, enhancement
Difficulty: advanced"
if [ $? -eq 0 ]; then
echo ""
echo "✅ Commit created successfully!"
echo ""
echo "Commit details:"
git log -1 --stat
else
echo ""
echo "❌ Commit failed!"
echo "Checking for issues..."
git status
fi