Skip to content

Fix CI: commit root package-lock.json, opt into Node.js 24, update README for workspace install#11

Merged
Chamudu merged 2 commits into
mainfrom
copilot/fix-ci-dependencies-and-deprecations
Apr 13, 2026
Merged

Fix CI: commit root package-lock.json, opt into Node.js 24, update README for workspace install#11
Chamudu merged 2 commits into
mainfrom
copilot/fix-ci-dependencies-and-deprecations

Conversation

Copilot AI commented Apr 13, 2026

Copy link
Copy Markdown
Contributor

CI was broken on two fronts: npm ci failing with "Dependencies lock file is not found" (no package-lock.json at repo root), and Node.js 20 deprecation warnings from actions/checkout@v4 / actions/setup-node@v4.

Workflow (ci.yml)

  • Added FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true at the top-level env to opt into Node.js 24 for all actions ahead of the forced June 2026 migration
  • Pipeline: npm ci → lint client-app → build client-appdocker compose config -q

Lockfile

  • Committed package-lock.json (lockfileVersion 3, npm v9+) at repo root covering all workspace packages — required by both npm ci and cache: "npm" in setup-node

README

  • Replaced 15-step per-service npm install loop with single npm install from root (npm workspaces)
  • Added callout explaining npm ci for reproducible installs and the lockfile commitment requirement
  • Added CI/CD section documenting workflow steps and contributor note on keeping the lockfile in sync
  • Added CI row to Technology Stack table
Original prompt

Resolve the following CI issues in Chamudu/SwiftLogistics:

  1. CI fails with Dependencies lock file is not found because no lock file is present at repo root. GitHub Actions with npm expects a package-lock.json, npm-shrinkwrap.json, or yarn.lock for reproducible installs (especially with npm ci and caching on workspaces).

  2. There's also a deprecation warning: Node.js 20 actions are deprecated for checkout/setup-node. Actions will use Node.js 24 starting June 2026. The recommended fix is to opt in by setting the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable in the workflow.

Tasks:

  • Generate and commit a root package-lock.json (with npm v9+ so it supports workspaces), so npm ci/caching works in CI and local dev.
  • Add FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true at the top (env section) of the CI workflow to future-proof it.
  • Update any relevant README sections about lockfile expectations for contributors.
  • Ensure workflow uses npm ci, runs lint/build on client-app, and validates docker-compose.yml.

Deliver as a PR targeting main branch.

The following is the prior conversation context from the user's chat exploration (may be truncated):

User: the thing is only back end interns are low, so i target se fullstack devops interns

Assistant: Then keep your CV “backend-strong” but market it as Full‑Stack + DevOps: you’ll get more matches while still looking technically deep.

What to adjust (so recruiters read you as full‑stack + DevOps)

  • Summary: explicitly say Full‑Stack + DevOps foundations (Docker, CI, deployments).
  • Skills: split into Frontend / Backend / DevOps so ATS picks you for full-stack roles.
  • Projects: each project should have 1–2 bullets for UI + deployment, but still lead with engineering impact.
  • VillageCare being private: keep demo link + “repo private”.

Below is a remade version optimized for SE / Full‑Stack / DevOps internships, aligned with your repos (no overclaims).

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <title>M.C.H. Weerasinghe - Resume</title>
  <style>
    body {
      font-family: "Times New Roman", Times, serif;
      font-size: 9.5pt;
      line-height: 1.25;
      color: #000;
      max-width: 8.5in;
      margin: 0 auto;
      padding: 0.35in;
      background: #fff;
    }
    h1 {
      font-size: 16pt;
      text-align: center;
      font-weight: normal;
      margin: 0 0 2px 0;
      text-transform: uppercase;
      letter-spacing: 1px;
    }
    .contact {
      text-align: center;
      font-family: Arial, sans-serif;
      font-size: 8.5pt;
      margin-bottom: 6px;
    }
    .contact a { color: #000; text-decoration: none; }
    h2 {
      font-size: 10.5pt;
      text-transform: uppercase;
      border-bottom: 1px solid #000;
      padding-bottom: 1px;
      margin-top: 6px;
      margin-bottom: 3px;
      font-weight: bold;
    }
    .item { margin-bottom: 4px; }
    .item-header {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
    }
    .item-title { font-weight: bold; }
    .item-date {
      font-family: Arial, sans-serif;
      font-size: 8.5pt;
      white-space: nowrap;
    }
    .item-sub { font-style: italic; font-size: 9pt; }
    ul { margin: 2px 0 0 0; padding-left: 14px; }
    li { margin-bottom: 1px; text-align: justify; }
    .summary { margin-bottom: 4px; text-align: justify; }
    .skills-line { margin-bottom: 1px; }
    .skills-line strong { font-family: Arial, sans-serif; font-size: 8.5pt; }
    .links { font-family: Arial, sans-serif; font-size: 8.5pt; }
    @media print {
      body { padding: 0.25in; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
    }
  </style>
</head>
<body>
  <h1>M.C.H. WEERASINGHE</h1>
  <div class="contact">
    +94 71 197 1373 &nbsp;|&nbsp;
    <a href="mailto:chamuduhansana@gmail.com">chamuduhansana@gmail.com</a> &nbsp;|&nbsp;
    <a href="https://linkedin.com/in/chamudu-h-367b18281">linkedin.com/in/chamudu-h-367b18281</a> &nbsp;|&nbsp;
    <a href="https://github.com/Chamudu">github.com/Chamudu</a> &nbsp;|&nbsp;
    <a href="https://portfolio-chamu.vercel.app">portfolio-chamu.vercel.app</a> &nbsp;|&nbsp;
    Gampaha, Sri Lanka
  </div>

  <h2>Summary</h2>
  <div class="summary">
    Computer Science undergraduate at the University of Colombo School of Computing (GPA: 3.58/4.0) building full-stack applications and distributed systems.
    Experienced with Node.js/Express, PHP (custom MVC), Python/Flask, PostgreSQL/MySQL, and front-end development with React and modern JavaScript.
    Comfortable with Docker Compose, GitHub Actions (familiar), and cloud deployments (Vercel). Seeking Software Engineering / Full-Stack / DevOps internship roles.
  </div>

  <h2>Education</h2>
  <div class="item">
    <div class="item-header">
      <span class="item-t...

</details>



<!-- START COPILOT CODING AGENT SUFFIX -->

*This pull request was created from Copilot chat.*
>

@Chamudu Chamudu marked this pull request as ready for review April 13, 2026 07:40
Copilot AI changed the title [WIP] Fix CI issues by adding package-lock.json and updating Node.js version Fix CI: commit root package-lock.json, opt into Node.js 24, update README for workspace install Apr 13, 2026
Copilot AI requested a review from Chamudu April 13, 2026 07:43
@Chamudu Chamudu merged commit 9db3690 into main Apr 13, 2026
3 checks passed
@Chamudu Chamudu deleted the copilot/fix-ci-dependencies-and-deprecations branch April 13, 2026 07:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants