check-engine
check-engine copied to clipboard
Phase 1: Foundation modernization - Node 18+, ESLint 9, security hardening, documentation
Implements Phase 1 of the modernization plan: establish a solid foundation with updated runtime, security enhancements, and documentation before adding new features.
Runtime & Dependencies
- Bump minimum Node.js from
>=10to>=18(breaking change for v2.0) - Fix 3 security vulnerabilities (brace-expansion, cross-spawn, js-yaml)
- Update ESLint 8 → 9 with flat config format
- Update jsonfile, semver to latest
Security
- Add
npm audit --audit-level=highto CI pipeline - Add CodeQL static analysis workflow
- Add
SECURITY.mdwith vulnerability disclosure policy
CI/CD
- Test matrix: Node 18.x, 20.x, 22.x
- Upgrade to actions/checkout@v4, actions/setup-node@v4
Documentation
- Add
CONTRIBUTING.mdwith validator authoring guide - Add
CHANGELOG.md(Keep a Changelog format) - Add
CODE_OF_CONDUCT.md(Contributor Covenant v2.0) - Add badges to README (build, npm version, license)
ESLint 9 Migration
// eslint.config.js (flat config)
module.exports = [
js.configs.recommended,
{
files: ["**/*.js"],
languageOptions: {
ecmaVersion: 2022,
globals: { ...globals.node, ...globals.es2022 }
},
rules: { /* preserved existing rules */ }
}
];
[!WARNING]
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
https://api.github.com//advisories
- Triggering command:
/home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js(http block)If you need me to access, download, or install something from one of these locations, you can either:
- Configure Actions setup steps to set up my environment, which run before the firewall is enabled
- Add the appropriate URLs or hosts to the custom allowlist in this repository's Copilot coding agent settings (admins only)
Original prompt
Impliment Phase 1
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.