Normal Flow
- Define the behavior and user goal.
- Decide the policy unit and classification.
- Update source code and tests.
- Update public docs if behavior, settings, policy, or file contracts changed.
- Update contributor docs if implementation boundaries, policy rules, or verification expectations changed.
- Run formatting checks, focused tests, and build.
- Add live verification evidence when required.
- Disclose AI assistance when any AI tool materially helped produce the change.
Files By Concern
Documentation Expectations
Update docs when:- A visible feature changes behavior.
- A policy classification changes.
- An active setup default,
.akrpack scope, or.akrsection changes. - A file location, command, or archive contract changes.
- A troubleshooting path changes.
Review Evidence
Provide the smallest evidence that proves the change:- Test output for unit-level changes.
- Formatting output from
dotnet format Akron.sln --include <changed-csharp-files>. - Build output for source changes.
- Screenshot or capture evidence for visual behavior.
- Live verification notes for input, timing, camera, hitbox, transition, overlay, or map-dependent behavior.
- Screenshot or video proof for new options or features when the behavior is visible, input-driven, timing-sensitive, rendering-sensitive, capture-related, or gameplay-facing.
- After evidence for fixes when the corrected behavior is visible or runtime-observable. Before evidence is preferred when it is practical to capture or reproduce.
Pull Request Checklist
- Keep the diff scoped to one goal.
- Run
dotnet format Akron.sln --include <changed-csharp-files>for changed C# project files. - Include the tests or checks that were run.
- Include screenshot or video proof for new visible, input-driven, timing-sensitive, rendering-sensitive, capture-related, or gameplay-facing options and features.
- Include after evidence for fixes when the corrected behavior is visible or runtime-observable.
- Include before evidence for fixes when practical, especially for visual, overlay, capture, or gameplay regressions.
- Include live verification notes when unit tests cannot prove the behavior.
- Update docs for user-facing behavior, policy, file locations, debug commands, or
.akrcontracts. - Avoid committing secrets, local tokens, personal config files, local captures, or machine-specific paths.
- Include the AI assistance disclosure when applicable.
Contribution license
CC BY-NC-ND 4.0 does not normally allow sharing adapted material. Akron’s copyright holders grant a limited exception to modify and share Akron-owned material only as reasonably necessary to prepare and submit a contribution to the official Akron repository. This exception does not permit publishing unofficial builds, maintaining a general-purpose fork, or using the changes for another project. GitHub’s own terms may separately govern copies made through GitHub’s fork functionality. By submitting a contribution, you represent that you have the right to submit it and grant Microck a perpetual, worldwide, non-exclusive, irrevocable, royalty-free license to use, reproduce, modify, distribute, sublicense, and relicense the contribution as part of Akron. This grant does not change the licenses of third-party material identified inlicenses/third-party-notices.txt.
AI-Assisted Contributions
AI-assisted contributions are allowed. They must meet the same code, docs, policy, and verification bar as hand-written changes. The contributor is responsible for the full contribution, including AI-assisted code, tests, docs, screenshots, created assets, and pull request text. When AI assistance materially helped produce a pull request, include these fields in the pull request body:
Disclosure fields must be factual. Do not claim human review, testing, verification, or approval unless it actually happened.
human_testing must describe real work that happened. Examples:
Ran dotnet test tests/akron-tests.csproj --nologo --filter FeatureRegistryTests.Built Source/Akron.csproj and manually checked the overlay in 7A with the overlay active.Reviewed the .akr pack in Saves/AkronSetups and imported it through the Interface tab.
No human testing performed is not acceptable for a pull request that is ready to merge.