Skip to content

Conversation

@liopeer
Copy link

@liopeer liopeer commented Jan 20, 2026

Summary

  • Dockerfile for the base image and some build commands (all over the repo) are outdated.
  • This PR copies over the right dependency specification for the base image and fixes all (at least all identified) wrong commands.

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation
  • New environment
  • Refactoring

Alignment Checklist

Before submitting, verify:

  • I have read .claude/docs/PRINCIPLES.md and this PR aligns with our principles
  • I have checked .claude/docs/INVARIANTS.md and no invariants are violated
  • I have run /pre-submit-pr (or bash .claude/hooks/lint.sh and tests) and addressed all issues

RFC Status

  • Not required (bug fix, docs, minor refactoring)
  • RFC exists: #___
  • RFC needed (will create before merge)

Test Plan

Try to run

docker build -t openenv-base:latest -f src/core/containers/images/Dockerfile .

and then run

docker build -t openenv-base:latest -f src/openenv/core/containers/images/Dockerfile .

Claude Code Review

@meta-cla
Copy link

meta-cla bot commented Jan 20, 2026

Hi @liopeer!

Thank you for your pull request and welcome to our community.

Action Required

In order to merge any pull request (code, docs, etc.), we require contributors to sign our Contributor License Agreement, and we don't seem to have one on file for you.

Process

In order for us to review and merge your suggested changes, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA.

Once the CLA is signed, our tooling will perform checks and validations. Afterwards, the pull request will be tagged with CLA signed. The tagging process may take up to 1 hour after signing. Please give it that time before contacting us about it.

If you have received this in error or have any questions, please contact us at [email protected]. Thanks!

@meta-cla
Copy link

meta-cla bot commented Jan 20, 2026

Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Meta Open Source project. Thanks!

@meta-cla meta-cla bot added the CLA Signed This label is managed by the Meta Open Source bot. label Jan 20, 2026
@zkwentz
Copy link
Contributor

zkwentz commented Jan 21, 2026

@greptile

@greptile-apps
Copy link

greptile-apps bot commented Jan 21, 2026

Greptile Summary

  • Updates Docker build command paths throughout the repository from src/core/containers/images/Dockerfile to src/openenv/core/containers/images/Dockerfile to fix broken base image builds
  • Corrects dependency file paths in the base image Dockerfile from src/core/pyproject.toml to ./pyproject.toml to align with repository structure
  • Fixes documentation across multiple environment READMEs to use the correct Docker build commands for the base image

Important Files Changed

Filename Overview
src/openenv/core/containers/images/Dockerfile Base image Dockerfile with corrected dependency paths; critical fix for all Docker builds
envs/chat_env/server/Dockerfile Docker build comment updated but COPY instruction still uses wrong path src/core/
envs/coding_env/server/Dockerfile.backup Backup file with partial fix - comment updated but COPY commands still reference outdated paths

Confidence score: 2/5

  • This PR addresses a real infrastructure issue but contains critical inconsistencies that will cause Docker builds to fail
  • Score lowered due to incomplete fixes in multiple Dockerfiles where COPY commands still reference non-existent src/core/ paths while build comments were updated correctly
  • Pay close attention to envs/chat_env/server/Dockerfile and envs/coding_env/server/Dockerfile.backup which have mismatched paths that will break Docker builds

Sequence Diagram

sequenceDiagram
    participant User
    participant Docker
    participant BaseImage as "Base Image Build"
    participant EnvImage as "Environment Image Build"
    participant Registry as "Image Registry"

    User->>Docker: "docker build -t openenv-base:latest -f src/openenv/core/containers/images/Dockerfile ."
    Docker->>BaseImage: "Build base image from Dockerfile"
    BaseImage->>BaseImage: "Install system dependencies (curl, ca-certificates)"
    BaseImage->>BaseImage: "Copy uv from builder stage"
    BaseImage->>BaseImage: "Set environment variables (PYTHONPATH, etc.)"
    BaseImage->>Docker: "Base image ready"
    Docker->>User: "openenv-base:latest created"

    User->>Docker: "docker build -t env-image:latest -f envs/*/server/Dockerfile ."
    Docker->>EnvImage: "Build environment image"
    EnvImage->>Registry: "Pull base image (openenv-base:latest)"
    Registry->>EnvImage: "Base image layers"
    EnvImage->>EnvImage: "Install environment-specific dependencies"
    EnvImage->>EnvImage: "Copy environment source code"
    EnvImage->>EnvImage: "Set CMD for FastAPI server"
    EnvImage->>Docker: "Environment image ready"
    Docker->>User: "env-image:latest created"
Loading

Copy link

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Additional Comments (4)

  1. envs/chat_env/server/Dockerfile, line 29 (link)

    logic: This COPY path is inconsistent with the updated build comment. Line 29 references src/core/ but the correct path should be src/openenv/core/ to match the repository structure. This will cause Docker builds to fail.

  2. envs/snake_env/server/Dockerfile.backup, line 14 (link)

    logic: The path src/envs/snake_env/server/requirements.txt appears incorrect - it should be envs/snake_env/server/requirements.txt based on the repository structure

  3. envs/snake_env/server/Dockerfile.backup, line 18-19 (link)

    logic: The paths src/core/ and src/envs/snake_env/ are inconsistent with the actual repository structure where environments are at envs/snake_env/ and core is at src/openenv/core/

  4. envs/snake_env/server/Dockerfile.backup, line 22 (link)

    logic: The path src/envs/snake_env/README.md should be envs/snake_env/README.md to match the repository structure

7 files reviewed, 4 comments

Edit Code Review Agent Settings | Greptile

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Meta Open Source bot.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants