# Action at a Distance

Record: `arch:action-at-a-distance`
Kind: anti-pattern
Layer: [Enforcement Core](https://banes-lab.com/records/layer/enforcement-core.md)
Severity: discouraged
Scope: event_messaging
Canonical: https://banes-lab.com/ontology#arch-action-at-a-distance

## Repair

- Refactored by: explicit_dependency, localize_effect, trace_causation, restrict_global_mutation
- Detected by: monkey_patch, global_registry_mutation, ambient_context_write, implicit_subscriber_side_effect
- Violated by: Let one part of the system change behavior far away through globals, monkey patches, shared registries, [ambient context](https://banes-lab.com/records/arch/ambient-context.md), or implicit event listeners.

## referenced-by

- [Controlled Side Effects](https://banes-lab.com/records/arch/controlled-side-effects.md)
