Repository navigation
Dev - #4
Dev#4
Conversation
cppenloglou
commented
May 31, 2026
- Added batch analysis endpoints for Dockerfiles and Compose files, allowing multiple files to be processed in a single request.
- Implemented validation for maximum file size and number of files in batch requests.
- Updated the analysis service to handle batch job enqueuing and response formatting.
- Enhanced the project upload process to support GitHub repository imports, including URL validation and metadata fetching.
- Introduced new schemas for batch analysis responses and findings summary to improve API consistency and usability.
- Implemented a new endpoint to delete jobs, including checks for job status and active deployments. - Refactored deploy status retrieval to use dedicated Redis key functions for improved clarity and maintainability. - Updated frontend components to support job deletion and provide user feedback. - Enhanced project analysis steps to ensure clarity in the workflow and user interactions.
Merge Commit for balanced branche.
…ng, and update monitoring status display - Introduced a new documentation file detailing UI and job lifecycle changes, including job deletion and project progress tracking. - Enhanced the ContainerExecution component to summarize exited containers, displaying relevant exit information and logs. - Updated the Monitoring component to reflect container health status, distinguishing between healthy, unhealthy, and exited states. - Modified the ResultsDashboard navigation to improve user experience when accessing monitoring metrics.
- Introduced a new enum value 'scanned' to the JobStatus for better job state tracking. - Implemented project draft expiration logic, including checks for expired drafts and cleanup procedures. - Enhanced project scanning response to include draft metadata and saved selections. - Updated job creation and analysis workflows to accommodate the new job status and draft management features. - Added validation for bind mounts in Compose workflows to ensure compatibility and prevent runtime issues.
…ialization scripts - Introduced a new `.env.example` file for environment variable configuration. - Updated `docker-compose.yaml` to enhance service definitions and health checks. - Added `start.sh` script for automated environment setup, including secret generation and service health checks. - Implemented `status.sh` and `stop.sh` scripts for monitoring and managing the Docker stack. - Enhanced the backend Dockerfile to use specific image digests for consistency. - Updated README to reflect new setup instructions and service management commands.
- Added a new endpoint to retrieve the Docker-in-Docker (DinD) IP address, improving container networking capabilities. - Implemented a fallback mechanism for resolving DinD IP using Docker DNS and environment variables. - Updated project upload functionality to confirm analysis and build selected images immediately after scanning. - Removed outdated project draft management logic to streamline the upload process. - Enhanced frontend components to reflect changes in project upload and analysis states, improving user experience.
- Introduced separate Docker Compose files for development and production environments (`compose.dev.yaml` and `compose.prod.yaml`). - Updated `.env.example` to include additional environment variables for service configuration. - Added scripts for managing the Docker stack, including `start.sh`, `status.sh`, and `stop.sh`, to streamline operations. - Implemented health checks and resource limits for services in the Compose files. - Enhanced the README with detailed instructions for environment setup and service management. - Removed the legacy `docker-compose.yaml` file to simplify the project structure.
…d analysis workflow - Enhanced `.gitignore` to include local transcript archives for better file management. - Updated `README-compose.md` to clarify Docker-in-Docker communication details and TLS requirements. - Revised `README.md` to reflect changes in project upload flow, emphasizing automatic image builds and explicit deploy actions. - Added new hook scripts for quality gate checks during project uploads, ensuring backend and frontend tests are executed based on changed files. - Introduced new rules and governance documentation to streamline project architecture and testing conventions.
- Added batch analysis endpoints for Dockerfiles and Compose files, allowing multiple files to be processed in a single request. - Implemented validation for maximum file size and number of files in batch requests. - Updated the analysis service to handle batch job enqueuing and response formatting. - Enhanced the project upload process to support GitHub repository imports, including URL validation and metadata fetching. - Introduced new schemas for batch analysis responses and findings summary to improve API consistency and usability.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: faed488b8d
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ) | ||
|
|
||
| runnability = ((target_compose_result.get("meta") or {}).get("runnability") or {}) | ||
| if runnability.get("runnable") is not True: |
There was a problem hiding this comment.
Avoid applying standalone env_file checks to projects
When a project compose file includes env_file, the compose runnability plugin still records the standalone-only reason env_file ... unavailable standalone, so this new project-level gate returns 409 before deployment even though the worker runs Docker Compose from the extracted project directory where that env file can be read. This blocks common uploaded projects with env_file: .env that previously reached the deploy worker; either ignore that reason in project context or validate the env file's presence instead of requiring runnable === true here.
Useful? React with 👍 / 👎.
| parts = vol.split(":") | ||
| if not parts: | ||
| continue | ||
| src = parts[0].strip() | ||
| if is_bind_mount_source(src): |
There was a problem hiding this comment.
Parse Windows bind-mount sources before the drive colon
For short-syntax volumes such as C:\Users\me\app:/app or C:/data:/data, splitting on every colon makes src equal to just C, so is_bind_mount_source(src) returns false and the Windows bind mount is silently treated as safe/runnable. In Windows-authored compose files this bypasses both the standalone runnability block and the DinD warning, letting a stack proceed until Docker fails because that host path is unavailable inside the Linux DinD daemon.
Useful? React with 👍 / 👎.