Thanks for contributing to Fishtank Ecology (VGA).
This repository is a browser-local emergent behavior simulation. Changes should preserve:
- the simulation-first framing
- the bounded tank presentation
- the lightweight static web stack
- the SemVer and release hygiene rules in AGENTS.md and RELEASING.md
- Base branch:
main - Use short-lived topic branches:
feat/<name>fix/<name>docs/<name>chore/<name>release/<version>
Use Conventional Commits:
feat:fix:docs:style:refactor:test:chore:
Guidelines:
- one logical change per commit
- imperative subject line
- keep subjects concise
- include docs updates when public behavior changes
- do not amend or rewrite published history
Before opening a PR:
node --check game.js
python3 -m http.server 8000
curl -I http://127.0.0.1:8000/index.html
curl -I http://127.0.0.1:8000/seed-audit.html
python3 scripts/check_seed_audit.py
python3 scripts/check_replay_stress.pyFor UI changes, also include:
- refreshed screenshots or clips
- seed(s) used for validation
- any known behavior tradeoffs or deferred tuning
For deployment or security hardening changes, also verify the built static artifact:
bash scripts/build_static_site.sh
python3 -m http.server 8010 --directory dist/site
curl -I http://127.0.0.1:8010/index.html
curl -I http://127.0.0.1:8010/seed-audit.html
FISHTANK_BASE_URL=http://127.0.0.1:8010 python3 scripts/check_seed_audit.py
FISHTANK_BASE_URL=http://127.0.0.1:8010 python3 scripts/check_replay_stress.pyPRs should:
- target
main - stay focused on one coherent goal
- include a concise summary
- list verification steps
- attach screenshots for visible UI changes
- include release impact notes when behavior or workflow changed
Use the repository PR template and prefer squash merge semantics.
This repository uses Semantic Versioning.
MAJOR: breaking compatibility or release-process changesMINOR: new backward-compatible capabilitiesPATCH: backward-compatible fixes and polish
If your PR changes the public behavior, release workflow, or repository policy, update the relevant docs and note the intended version impact.
Release procedure and the required release Title/Name plus Description template live in RELEASING.md.