You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Two places where a closed set is stated twice or a code carries two meanings, both found by reviewers during the docstring pass.
PurchaseHealing.service is a Literal in crawl/commands.py and HEALING_SERVICES in crawl/exploration.py is a dict with the same keys and the prices. Adding a service to one does nothing without the other, and the docstring on HEALING_SERVICES had to warn about it (Docstrings: crawl exploration #87). Derive one from the other, or make the service table the single source and validate the command against it.
MoraleCheckedEvent emits one code, combat.morale.exempt, for two opposite outcomes: a score of 2 or less never holds and a score of 12 or more always holds. The score field is the only discriminator, so a consumer cannot render the outcome from the code alone, which every other event in the catalog lets it do (Docstrings: core effects and events #95). Two codes, or an outcome field the code already carries elsewhere.
Both are additive within the schema version: a new code and a derived table change no existing field. Update the generated message-code and rejection-code pages in the same change.
Two places where a closed set is stated twice or a code carries two meanings, both found by reviewers during the docstring pass.
PurchaseHealing.serviceis aLiteralincrawl/commands.pyandHEALING_SERVICESincrawl/exploration.pyis a dict with the same keys and the prices. Adding a service to one does nothing without the other, and the docstring onHEALING_SERVICEShad to warn about it (Docstrings: crawl exploration #87). Derive one from the other, or make the service table the single source and validate the command against it.MoraleCheckedEventemits one code,combat.morale.exempt, for two opposite outcomes: a score of 2 or less never holds and a score of 12 or more always holds. Thescorefield is the only discriminator, so a consumer cannot render the outcome from the code alone, which every other event in the catalog lets it do (Docstrings: core effects and events #95). Two codes, or an outcome field the code already carries elsewhere.Both are additive within the schema version: a new code and a derived table change no existing field. Update the generated message-code and rejection-code pages in the same change.