CONTRIBUTING.md
Rama main · réplica de lectura del repositorio original.
# Contributing
Bug reports, feature requests, and PRs are welcome.
## Local development
- `scripts/resolve-release.sh [stable|experimental]` prints the current
Factorio version, which architectures exist for it, and any published
checksums — the same script CI uses.
- `scripts/lint.sh` runs everything CI's lint job runs — shellcheck,
hadolint, and compose config validation — plus a bash syntax check CI
doesn't do. Install `shellcheck` and `hadolint` to get full coverage; the
script skips whichever isn't installed and still runs the rest.
- The README's "Building locally" section has the commands for building the
image itself.
## What CI checks on a PR
`ci.yml` runs shellcheck, hadolint, compose validation, and a smoke test
that boots the server, waits for the healthcheck to go green, and verifies
a clean SIGTERM shutdown. Everything except the smoke test is also
available locally via `scripts/lint.sh`.
## Making a change
- Keep changes minimal and scoped to one logical thing per PR.
- Follow the patterns already in the codebase — e.g. the
registry-is-the-state design described in the README's "How the
automation works" section. If you're changing how something works, a
quick look at why it works that way today will save a round of review
comments.
- For anything that changes behavior or adds configuration, open an issue
first so the approach can be agreed on before you put time into it.
Straightforward fixes don't need this.
## Code of conduct
Be respectful, assume good faith. That's it.