-
Notifications
You must be signed in to change notification settings - Fork 1
Add pipe-delimited usecase filtering for Cloud Run deployments #37
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
base: main
Are you sure you want to change the base?
Conversation
- Implement LOGSTORY_USECASES environment variable for filtering usecases in 'replay all' command - Use pipe separator to avoid gcloud argument parsing issues - Add validation for requested usecases with helpful error messages - Maintain backward compatibility - no filtering when LOGSTORY_USECASES not set - Update documentation across README, configuration guides, and testing docs - Add comprehensive testing guide for pipe-delimited functionality Resolves Cloud Run deployment issues with comma-separated usecase arguments
|
@claude pls review |
|
Claude finished @dandye's task —— View job Code Review Complete ✅I've completed the review of the pipe-delimited usecase filtering implementation. This is a well-designed solution that effectively addresses Cloud Run deployment issues with comma-separated arguments. Todo List:
SummaryThis PR implements a clean environment variable-based approach to filtering usecases in the ✅ Strengths
🔍 Implementation AnalysisCore Logic (src/logstory/logstory.py:898-914)The implementation is clean and follows good practices: # Filter usecases if LOGSTORY_USECASES environment variable is set
filter_usecases = os.getenv("LOGSTORY_USECASES")
if filter_usecases:
# Parse pipe-separated list and filter
requested_usecases = [uc.strip() for uc in filter_usecases.split("|") if uc.strip()]
# Validate that requested usecases exist
invalid_usecases = [uc for uc in requested_usecases if uc not in all_usecases]
if invalid_usecases:
typer.echo(f"Error: Invalid usecases: {', '.join(invalid_usecases)}")
typer.echo(f"Available usecases: {', '.join(sorted(all_usecases))}")
raise typer.Exit(1)
usecases = requested_usecases
typer.echo(f"Processing filtered usecases: {', '.join(usecases)}")
else:
usecases = all_usecases
typer.echo(f"Processing all usecases: {', '.join(usecases)}")Positive aspects:
Documentation UpdatesThe documentation updates are thorough and well-structured:
🛡️ Security & Best Practices
🔧 Minor Suggestions
✅ Testing & VerificationThe testing guide in
🎯 RecommendationAPPROVE - This is a well-implemented solution that:
The minor suggestions above are purely optional enhancements and don't impact the core functionality or correctness of the implementation. |
Summary
Changes
Test plan
Resolves Cloud Run deployment issues with comma-separated usecase arguments by implementing a clean environment variable-based filtering approach.