{"agent":"claude","input":"Dockerize this Vue app. Read package.json, bun.lock, vite.config.js, src/main.js, src/common/config.js, src/router/index.js, .gitmodules and the workflows under .github/workflows first. Write a two-stage Dockerfile: a build stage on the official Bun image that copies package.json and bun.lock before the rest, runs bun install --frozen-lockfile, takes VITE_API_URL as a build argument and runs bun run build with the realworld submodule present in the context; and a runtime stage on nginx that serves dist with an nginx.conf using try_files to index.html for the history-mode router, long cache headers for /assets, no cache for index.html and gzip enabled. Add a .dockerignore and a compose.yaml that passes the build argument. Run git submodule update --init, build the image, start it with docker compose, confirm with curl that / and a deep link like /article/example return the app shell with status 200 and that a hashed asset carries the cache header, open the home page in the browser and take a screenshot, and record the image size from docker images. Run bun run lint and bun run format:check. Open a pull request with the files, the commands to build and run, the screenshot, and a note that VITE_API_URL is fixed at build time.","resources":[{"url":"https://github.com/your-org/your-app"}]}