@@ -25,7 +25,7 @@ This is the **OpenSSF Best Practices Badge** project (formerly CII Best Practice
25
25
### Code Quality & Linting
26
26
27
27
- ` rake ` or ` rake default ` - Run complete CI pipeline (linting, tests, security checks).
28
- - ` rake rubocop ` - Ruby style checker
28
+ - ` rake rubocop ` - Ruby style checker
29
29
- ` rake rails_best_practices ` - Rails-specific best practices source checker
30
30
- ` rake markdownlint ` - Markdown linting
31
31
- ` rake eslint ` - JavaScript linting
@@ -83,7 +83,7 @@ not done on the local system.
83
83
Security is * extremely* important to this project. Some features:
84
84
85
85
- ** Encrypted Data** : User emails encrypted with AES-256-GCM
86
- - ** Blind Indexing** : Email searches use blind indices for privacy
86
+ - ** Blind Indexing** : Email searches use blind indices for privacy
87
87
- ** CSRF Protection** : All forms protected with Rails CSRF tokens
88
88
- ** Rate Limiting** : Uses ` rack-attack ` for DoS protection
89
89
- ** Content Security Policy** : Strict CSP headers via ` secure_headers ` gem
@@ -121,7 +121,7 @@ The file `docs/assurance-case.md` explains why we *believe* this is secure.
121
121
122
122
## Key Configuration Files
123
123
124
- - ` config/application.rb ` - Core Rails app configuration
124
+ - ` config/application.rb ` - Core Rails app configuration
125
125
- ` config/routes.rb ` - Complex routing with locale support
126
126
- ` lib/tasks/default.rake ` - Custom rake tasks including full CI pipeline
127
127
@@ -169,7 +169,7 @@ Security is *VERY* important in this application.
169
169
Key environment variables for development:
170
170
171
171
- ` RAILS_ENV ` - Rails environment (development/test/production)
172
- - ` EMAIL_ENCRYPTION_KEY ` - 64 hex digits for email encryption
172
+ - ` EMAIL_ENCRYPTION_KEY ` - 64 hex digits for email encryption
173
173
- ` EMAIL_BLIND_INDEX_KEY ` - 64 hex digits for email search indices
174
174
- ` BADGEAPP_REAL_PRODUCTION ` - Set to "true" only on true production site
175
175
- ` PUBLIC_HOSTNAME ` - Hostname for the application
@@ -192,7 +192,7 @@ Key environment variables for development:
192
192
### Security Considerations
193
193
194
194
- Badge image URLs must be canonical for CDN caching
195
- - All user input requires validation and sanitization
195
+ - All user input requires validation and sanitization
196
196
- Session timeouts are enforced - don't extend arbitrarily
197
197
- Rate limiting is aggressive - be aware when testing
198
198
@@ -204,3 +204,11 @@ Key environment variables for development:
204
204
- ` docs/ ` - Extensive documentation including security assurance case
205
205
- ` lib/tasks/default.rake ` - CI pipeline and custom tasks
206
206
- ` test/ ` - Comprehensive test suite
207
+
208
+ ## Miscellaneous
209
+
210
+ IMPORTANT: Never have trailing whitespace in text-like files including
211
+ source code and markdown files.
212
+
213
+ IMPORTANT: When creating temporary files, always prefix their names with
214
+ a comma to distinguish them.
0 commit comments