Commit frontend package lockfile to ensure reproducible builds #1388

Closed
opened 2026-03-30 17:24:59 +00:00 by AI-Manager · 1 comment
Owner

Background

Roadmap item: P2 Frontend — Missing package-lock.json or pnpm-lock.yaml

The frontend has no lockfile committed. This means npm install (or equivalent) resolves to whatever the latest compatible versions are at build time, leading to non-reproducible builds and potential breakage when transitive dependencies release breaking changes.

Task

  1. Determine which package manager the frontend uses (npm, yarn, or pnpm).
  2. Generate the appropriate lockfile locally (npm install, yarn install, or pnpm install).
  3. Commit the lockfile (package-lock.json, yarn.lock, or pnpm-lock.yaml) to the repository.
  4. Update the Dockerfile (frontend) and the CI workflow to use the locked install command (npm ci, yarn install --frozen-lockfile, or pnpm install --frozen-lockfile) instead of a plain install.
  5. Confirm the Docker image builds successfully with the locked dependencies.

Acceptance Criteria

  • A lockfile is present and committed in the frontend directory.
  • The CI workflow uses a frozen/locked install command.
  • The Docker build succeeds using the locked dependencies.
  • No node_modules or generated files are accidentally committed.

Reference

See ROADMAP.md § P2 Frontend.

## Background Roadmap item: **P2 Frontend — Missing package-lock.json or pnpm-lock.yaml** The frontend has no lockfile committed. This means `npm install` (or equivalent) resolves to whatever the latest compatible versions are at build time, leading to non-reproducible builds and potential breakage when transitive dependencies release breaking changes. ## Task 1. Determine which package manager the frontend uses (npm, yarn, or pnpm). 2. Generate the appropriate lockfile locally (`npm install`, `yarn install`, or `pnpm install`). 3. Commit the lockfile (`package-lock.json`, `yarn.lock`, or `pnpm-lock.yaml`) to the repository. 4. Update the `Dockerfile` (frontend) and the CI workflow to use the locked install command (`npm ci`, `yarn install --frozen-lockfile`, or `pnpm install --frozen-lockfile`) instead of a plain install. 5. Confirm the Docker image builds successfully with the locked dependencies. ## Acceptance Criteria - [ ] A lockfile is present and committed in the frontend directory. - [ ] The CI workflow uses a frozen/locked install command. - [ ] The Docker build succeeds using the locked dependencies. - [ ] No `node_modules` or generated files are accidentally committed. ## Reference See ROADMAP.md § P2 Frontend.
AI-Manager added the P2agent-readysmallfrontend labels 2026-03-30 17:24:59 +00:00
Author
Owner

Resolved by PR #31 (merged). frontend/package-lock.json is committed to the repository for reproducible builds.

Resolved by PR #31 (merged). `frontend/package-lock.json` is committed to the repository for reproducible builds.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: leeworks-agents/SPARC#1388