Skip to content
Sierra "SierraKomodo" Brown edited this page Aug 8, 2023 · 11 revisions

Issues and Pull Requests will be assigned a series of labels by maintainers to help keep track of different categories of bugs and changes. The following list is a general guideline of what each label represents but is not a set of hard and fast rules.

Issue Labels

Issue labels are assigned based on the issue described by the author and may be updated with more accurate labels once reproduced or verified by a maintainer. Every issue will have a reproduction status, issue type, and a priority label applied to it by a maintainer. Additional labels may be applied based on the issue.

Reproduction Status

  • Needs Reproduction - Indicates an issue hasn't been tested or confirmed yet by the maintainer.
  • Could Not Reproduce - Indicates the maintainer could not reproduce the bug using the steps provided.
  • Could Reproduce - Indicates the maintainer was able to reliably reproduce the bug.

Issue Type

  • BYOND 515 - Indicates the issue occurs on clients running Byond version 515, or when the server is compiled using Byond 515.
  • BYOND issue - Indicates the issue is caused by an internal problem with byond. Generally means the issue is unfixable without a workaround or update to byond itself.
  • Bug - General bug label, meaning undesired, unintended, or unexpected behavior in the code. Pretty much everything will probably have this one.
  • Oversight - Indicates an oversight instead of a bug. Technically functioning as written (or even intended), but not desirable due to unforeseen effects in other aspects of the game. Examples could include changes to damage and health systems that result in some mobs being extremely tanky.
  • Runtime Error - Assigned by the runtime bot. These are errors that occurred in runtime during a round and are automatically posted.

Priorities

Priorities are a general organizational label to help contributors determine where to focus when helping resolve bugs.

  • Priority: High - Game breaking or potentially game-breaking. Things that crash the server, crash clients, render the game unplayable for people, or otherwise have a massively detrimental effect. May also be used for issues determine needing immediate fixing.
  • Priority: Medium - Non-game breaking issues that prevent or hinder certain functionality required for general play. I.e., complete inability to use a specific item or command needed to start the engine or perform medical. Also covers instances of issues that can cause the removal of a player from the round through otherwise avoidable death.
  • Priority: Low - Non-game breaking issues that prevent or hinder certain functionality not required for general play. I.e., a specific item doesn't work but isn't required for key components to the game or has a functioning counterpart.
  • Priority: Trivial - Any issues that don't fit into the above categories. Typically things that have no impact on the game - Grammatical errors, cosmetic issues, basic QOL issues, etc.

Other Labels

These other labels may be applied as deemed relevant by a maintainer.

  • Adminbus - The issue was caused by an admin or dev doing things that aren't normally possible in the game. Typically involves the usage of var editing or build mode.
  • Grammar and Formatting - The issue describes grammar, spelling, or general text/HTML formatting issues.
  • Map - Indicates the issue is in a .dmm file and requires map edits to fix.
  • Sound - Indicates the issue is audio related.
  • Sprites - Indicates the issue is in a .dmi file and requires icon edits to fix, or is an issue in the definition of icon vars and icon update calls.

Pull Request Labels

Pull requests are given a series of labels for categorization purposes and notifications to other maintainers of actions needed on merge, or reasons not to merge.

Categorization Labels

These labels are used to indicate specific types of files or changes are made in the PR. These exist to alert devs they may need to check specific action outputs (I.e. icondiffs and mapdiffs), or consider additional things when reviewing (I.e., copyright/ownership of sound files or sprites).

  • Map - Contains changes to .dmm files. Automatically applied by GitHub Actions if the PR includes changes to a *.dmm file.
  • Repo - Contains changes that affect the repository itself. Tests, documentation, GitHub or git metadata, code editor settings, actions, etc. Automatically applied by GitHub Actions if the PR includes changes to a file within any of the repo or editor config files and folders (I.e.,.github/, .vscode/, README.md - See .github\labeler.yml for a full list.)
  • Sound - Contains changes to sound/music files. Automatically applied by GitHub Actions if the PR includes changes to a sound file.
  • Sprites - Contains changes to .dmi files. Automatically applied by GitHub Actions if the PR includes changes to a *.dmi file.

Do Not Merge Labels

These labels indicate there is one reason or another to not merge the pull request.

  • Awaiting Lore (DNM) ✎ - The contents of the PR require review and approval from a relevant lore maintainer. This label is removed once a lore maintainer has given their approval.
  • BYOND 515 - The PR relies on features provided in Byond 515, and should not be merged until the server is updated and able to run 515.
  • Has Dependencies - The PR relies on changes from other PRs or updates that have not been merged/applied yet.
  • Do Not Merge - General DNM flag for cases not covered by other DNM labels.

Status Labels

These indicate a general status of a pull request.

  • Awaiting Author - The maintainer is waiting for a response or update from the author before proceeding with a review or merge.
  • Stale ⚰️ - The PR has not been updated and appears to have been abandoned. Generally, these are closed within 24-30 days of the label being applied if there are no further updates in that time.
  • Lore Approved - The relevant lore maintainers have approved the PR.

Merge Reminders

These labels exist as general reminders that specific actions are required before or after merging the PR.

  • Config Update - Contains changes that will require updating the server's configuration files after merge. These PRs may be delayed in merging as only some maintainers have the access required to make the configuration changes. Automatically applied by GitHub Actions if the PR includes changes to a file in the config/example/ folder.
  • Database changes ⚠ - Contains changes that will require updating the server's database after merge. These PRs may be delayed in merging as only some maintainers have the access required to make the database changes.
  • Test Merge ✔️ - This PR is intended to be given a trial run on live before being approved or merged.
  • Update Wiki after Merge - The wiki should be updated to reflect the changes made in the PR after merge. The author may be requested to have a wiki page ready to copy over before the PR will be approved for larger changes.

Documentation regarding setting up and using Git.

Making heads or tails of specific GitHub pages, for the uninitiated.

Tools

Documentation regarding tools external to DM and Git.

Documentation

Content creation guides

Standards

Standards and guidelines regarding commenting, contributor conduct and coding standards.

Clone this wiki locally