Skip to content

fix(ci): drop private @taskade/eslint-plugin so the public repo installs everywhere#20

Closed
johnxie wants to merge 1 commit into
masterfrom
fix/public-ci-no-private-eslint
Closed

fix(ci): drop private @taskade/eslint-plugin so the public repo installs everywhere#20
johnxie wants to merge 1 commit into
masterfrom
fix/public-ci-no-private-eslint

Conversation

@johnxie

@johnxie johnxie commented Jun 21, 2026

Copy link
Copy Markdown
Member

Why CI is red on every branch (incl. master)

package.json listed @taskade/eslint-plugin (a private GitHub Packages package) in dependencies, and .eslintrc.json extended plugin:@taskade/base from it. So yarn install --frozen-lockfile returns 401 Unauthorized for anyone without taskade-org package access:

  • every CI run is redmaster, this branch, #19, all of them fail at the install step.
  • no external contributor can install or build this public integration kit — a hard blocker for a repo whose whole point is community-portable integrations.

And the plugin was lint-only while CI only ran build+test (never lint) — so it was pure breakage for zero benefit.

Fix

Change Effect
Remove @taskade/eslint-plugin from dependencies; regenerate yarn.lock yarn install works for everyone — no private registry needed
Replace .eslintrc.json with a self-contained public config (eslint + @typescript-eslint) linting is portable; lenient on the existing require()/any/@ts-ignore so it passes as-is
Add a lint script + a CI yarn lint step now that lint is public and green, CI actually enforces it

Verified locally

yarn install · yarn lint · yarn build · yarn test (4/4) all green. This PR's own CI run will be the first green one in the repo.

Unblocks #19 and every future contributor.

🤖 Generated with Claude Code

…lls everywhere

The repo listed @taskade/eslint-plugin (a PRIVATE GitHub Packages package) in
`dependencies`, and .eslintrc.json extended `plugin:@taskade/base` from it. So
`yarn install --frozen-lockfile` returned 401 Unauthorized for anyone without
taskade-org package access — every CI run (master + all PRs) was red, and no
external contributor could install or build this PUBLIC integration kit.

The plugin was lint-only and CI never even ran lint, so it was pure breakage.

- Remove the private dependency; regenerate yarn.lock.
- Replace .eslintrc.json with a self-contained PUBLIC config (eslint +
  @typescript-eslint, lenient on the existing require()/any/@ts-ignore usage).
- Add a `lint` script and run it in CI — now that linting is public and the
  code passes, CI actually enforces it.

Verified locally: yarn install / yarn lint / yarn build / yarn test (4/4) all
green. Unblocks #19 and every future contributor.
@johnxie

johnxie commented Jun 21, 2026

Copy link
Copy Markdown
Member Author

Folded into #19 so the task_due migration and the CI fix land together as one green, reviewable PR. The fix (drop the private @taskade/eslint-plugin, public eslint config, CI lint step) is unchanged — see #19.

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.

1 participant