Neovim's runtimepath searcher outranks package.path, so `make test` on a
machine with arti-pack installed tests the installed copy.
- Give the repository the first package loader slot in the test harness
- Run the suite under `nvim --clean` so site packages stay off the rtp
- Assert modules resolve inside the repository, even with a copy on the rtp
- add a fmt-check make target running stylua --check over lua, tests and plugin
- add a fmt step to the lint pipeline fetching pinned stylua v2.5.2
- verify the download against its sha256 before use
Uploads are immutable, so a malformed archive cannot be replaced at its
version path. verify-package checks the zip has one top-level directory,
carries lua/, plugin/, doc/ and README.md, and leaks no dev or CI files.
- add lua modules for spec parsing, lock state, fs helpers and the installer
- add ArtiPackSync/ArtiPackClean/ArtiPackList commands and help doc
- add headless nvim test harness and specs
- add make test/lint/fmt/pre-commit and patch/minor/major bump targets
- add woodpecker test, lint and pre-commit pipelines