Skip to content

No CI; lint, tsc and tests run only by hand #82

Description

@kmch4n

Summary

There is no .github/ directory and no CI of any kind. npm run lint, npx tsc --noEmit and node --test "scripts/tests/*.test.cjs" run only when someone remembers to run them.

That has already cost something measurable. .memory/testing.md records homeSwipeDelete.test.cjs failing on main for a day without anyone noticing, because a refactor in d8cb778 did not update the test b908ad3 had added. CI would have caught it on the commit that broke it.

The exposure is larger than it looks, because node --test has no npm script. npm test is not defined, so the suite is invisible to anyone who has not read .memory/testing.md.

Why this is not being set up without a decision

  • Whether to spend GitHub Actions minutes on a private single-developer repository is a cost call, not a technical one.
  • The useful gates are cheap (lint, tsc, node --test — all run in a few seconds with no native build), but the tempting ones are not: an EAS build per push would be slow and metered, and the manual iOS verification that carries most of the quality load here cannot be automated at all.
  • Adding "test": "node --test \"scripts/tests/*.test.cjs\"" to package.json is the obvious companion change, but it changes the documented way to run tests, which .memory/testing.md and .codex/AGENTS.md both spell out — those would need updating in the same change.

Suggested handling

A minimal workflow on push and pull request would cover the three existing gates:

- npm ci
- npm run lint
- npx tsc --noEmit
- node --test "scripts/tests/*.test.cjs"

Deliberately excluded: EAS builds, and anything requiring a simulator.

Acceptance criteria

  • The three existing gates run automatically on main.
  • If an npm test script is added, .codex/AGENTS.md and .memory/testing.md are updated in the same change.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    priority:lowLow prioritytaskRepository maintenance and cleanup worktech-debtCode health and maintainability

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions