Skip to content

Commit 8ccacc5

Browse files
committed
fix(landing): include all workspace packages in dockerfile
The deps stage in apps/landing/Dockerfile must copy package.json for every workspace declared in root package.json. Missing entries caused Railway builds to fail with "error: <pkg>@workspace:* failed to resolve". Added COPY commands for: - packages/client-runtime - packages/effect-acp - packages/effect-codex-app-server Documented this rule in AGENTS.md to prevent future regressions when adding or removing workspace packages.
1 parent 8b717a5 commit 8ccacc5

2 files changed

Lines changed: 11 additions & 0 deletions

File tree

AGENTS.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,14 @@ className = "pr-3 sm:pr-5 pl-[90px]";
161161

162162
The same applies to `py-*` vs `pt-*`/`pb-*`.
163163

164+
## Landing Dockerfile: Workspace `package.json` Coverage
165+
166+
`apps/landing/Dockerfile` runs `bun install --frozen-lockfile` against the whole monorepo. Because the root `package.json` declares `apps/*`, `packages/*`, and `scripts` as workspaces, bun walks the entire workspace graph in `bun.lock` — every `workspace:*` reference must resolve, even ones the landing app does not import.
167+
168+
**Rule:** the deps stage must `COPY` a `package.json` for every workspace listed in root `package.json`. Currently that means `apps/{server,web,desktop,landing}`, `packages/{client-runtime,contracts,effect-acp,effect-codex-app-server,shared}`, and `scripts`.
169+
170+
When adding, renaming, or removing a workspace package, update the deps stage in `apps/landing/Dockerfile` in the same commit. Otherwise Railway builds fail with `error: <pkg>@workspace:* failed to resolve` at the install step.
171+
164172
## Reference Repos
165173

166174
- Open-source Codex repo: https://github.com/openai/codex

apps/landing/Dockerfile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,10 @@ COPY apps/server/package.json ./apps/server/package.json
66
COPY apps/web/package.json ./apps/web/package.json
77
COPY apps/desktop/package.json ./apps/desktop/package.json
88
COPY apps/landing/package.json ./apps/landing/package.json
9+
COPY packages/client-runtime/package.json ./packages/client-runtime/package.json
910
COPY packages/contracts/package.json ./packages/contracts/package.json
11+
COPY packages/effect-acp/package.json ./packages/effect-acp/package.json
12+
COPY packages/effect-codex-app-server/package.json ./packages/effect-codex-app-server/package.json
1013
COPY packages/shared/package.json ./packages/shared/package.json
1114
COPY scripts/package.json ./scripts/package.json
1215

0 commit comments

Comments
 (0)