-
Notifications
You must be signed in to change notification settings - Fork 1
S3 storage support #14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Integrated event storage functionality via AWS S3, adding a new action to store event payloads. Updated the ServerState structure and initialization to include the S3 client. Adjusted configuration and documentation to support S3, including new environment variables and library dependencies.
- Created tests for S3 storage functionality - Added event storage integration tests - Set up GitHub Actions workflow with LocalStack for S3 testing - Updated README with testing instructions 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Remove volume mount that was causing errors - Fix environment variables for better compatibility 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Use existing AWS CLI in GitHub runner - Remove unnecessary installation steps 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Use AWS CLI instead of SDK for LocalStack operations - Add fallback mechanisms for different environments - Improve test resilience 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Use 'ref' pattern to avoid moving endpoint_url - Remove unused import 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Use 'ref' pattern to avoid moving endpoint_url in pattern matching - Same fix as applied to the S3 integration test 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
- Format code with rustfmt - Remove unit tests from integration-tests workflow 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
S3 Storage Implementation ReviewAs a senior developer reviewing this PR, I'm impressed with the overall structure and thoroughness. The implementation adds robust S3 storage capabilities with proper error handling and testing. Here's my detailed review: Strengths
Areas for Improvement
ConclusionThis is a solid implementation that achieves its goals and includes proper testing. The PR is ready for review by other team members. Recommended tasks before merging:
Overall, this is high-quality work that follows best practices for cloud storage integration. |
- Address review feedback by ignoring macOS system files 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Update handle_nats function to recognize both v12 (L1L) and v13 (L1M/TDFN) magic bytes when determining message type. This ensures v13 nanoTDF messages are correctly categorized as NATS messages (0x05) instead of being misclassified as events (0x06). 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Add detailed logging throughout the rewrap request flow to help diagnose why iOS clients aren't receiving 0x04 responses. Logs now track when requests are received, ephemeral keys processed, and responses sent through WebSocket. Also fixed clippy lint error. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Update policy field parsing to handle v13 policy types (0x02, 0x03) while maintaining v12 compatibility. Pass version byte to read_policy_field to enable version-specific parsing. This fixes InvalidPolicy errors when processing v13 nanoTDF headers. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Add logging to show magic bytes, version, and first bytes of rewrap payload to help diagnose v13 parsing issues. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Add support for v13's extended KAS structure which includes KAS Key Curve Enum and KAS Public Key fields after the KAS Endpoint Locator. This fixes the InvalidPolicy errors by correctly parsing the v13 header structure. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
|
Summary
Implementation Details
Testing
CI/CD
Documentation
🤖 Generated with Claude Code