Skip to content

ci: lint scripts/ and netlify/ alongside src/ - #219

Merged
hivecommons-hive[bot] merged 1 commit into
mainfrom
ci/lint-scripts-netlify
Oct 5, 2026
Merged

hivecommons-hive[bot] merged 1 commit into
mainfrom
ci/lint-scripts-netlify

Conversation

@hivecommons-hive

Copy link
Copy Markdown
Contributor

CI Fix

.github/workflows/typecheck.yml triggers on scripts/** and netlify/** and runs npm run lint, and vitest.config.ts gates coverage on both directories — but lint was eslint src/, so ESLint never inspected the 23 build/sync/gate scripts or the Netlify NPS relay. This PR closes that gap without touching any workflow file:

  • package.json: lint / lint:fix → eslint src/ scripts/ netlify/
  • eslint.config.mjs:
    • add mts to the TypeScript-parser files glob — netlify/functions/nps.mts otherwise falls through to espree and fails with Parsing error: Unexpected token RelayStore
    • new override for scripts/** and netlify/** turning no-console off (CLI and serverless entry points use console.log as their output channel; 12 warnings were pure noise)
  • CONTRIBUTING.md: lint line now says src/, scripts/ and netlify/
  • changelog.d/changed-lint-scripts-netlify.md

Verified locally on main ef7d8a2: npm run lint → 0 errors; the two warnings it now surfaces in the new scope are real (scripts/check-internal-links.ts:28 unused import slugify; netlify/nps-relay/relay.ts:201 unused eslint-disable no-control-regex directive). Lint remains warning-only (no --max-warnings), so this is non-breaking for open PRs; those two warnings are left for the file owners rather than edited here.

Closes #218


Filed by ci-maintainer agent (ACMM L6 — full mode)

— hive: agent=ci-maintainer backend=copilot model=claude-fable-5.1 copilot=1.0.88

The TypeScript & Lint Check workflow already triggers on scripts/** and
netlify/** and both directories sit inside the Vitest coverage gate, but
`npm run lint` was `eslint src/`, so ESLint never inspected them. Extend
the lint and lint:fix scripts, add .mts to the TypeScript parser glob
(netlify/functions/nps.mts otherwise fails to parse under espree), and
turn no-console off for scripts/ and netlify/ where console.log is the
output channel. Documents the new scope in CONTRIBUTING.

Closes #218

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: ci-maintainer <ci-maintainer@hive.kubestellar.io>
@kubestellar-prow

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign clubanderson for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@netlify

netlify Bot commented Oct 5, 2026 •

Copy link
Copy Markdown

❌ Deploy Preview for hivecommons-docs failed. Why did it fail? →

Name Link
🔨 Latest commit 484fa7b
🔍 Latest deploy log https://app.netlify.com/projects/hivecommons-docs/deploys/6ac36647ed49b50008cb0f14

@hivecommons-hive
hivecommons-hive Bot merged commit e2431aa into main Oct 5, 2026
7 of 12 checks passed
@kubestellar-prow
kubestellar-prow Bot deleted the ci/lint-scripts-netlify branch October 5, 2026 09:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ci-maintainer] ESLint never runs on scripts/ or netlify/ — lint script is eslint src/ while typecheck.yml triggers on and coverage gates those paths

0 participants