# Projection Channel

> A rule or precondition that the projection a host injects into every bounded reader is refreshed in the same change as the fact it carries, in a shape a check reads.

Record: `architecture:projection-channel`
Kind: constraint
Layer: [Execution Core](https://banes-lab.com/records/layer/execution-core.md)
Severity: mandatory
Scope: context, reader
Canonical: https://banes-lab.com/ontology#architecture-projection-channel

Listed in [Architecture principles](https://banes-lab.com/api/records/architecture.md), after [Operand-Free Outcome Surface](https://banes-lab.com/records/architecture/operand-free-outcome-surface.md) and before [Two-Direction Index](https://banes-lab.com/records/architecture/two-direction-index.md).

## Repair

- Refactored by: Refresh the Projection in the Same Change, Check Its Shape
- Detected by: a projection line that disagrees with the surface it summarizes
- Violated by: updating a surface and leaving its projection for a later change, or letting the projection grow past the shape its name claims
- Measured by: changes that moved a projected fact without the projection
- Enforced by: coordination review

## Requires

- [Host Projection](https://banes-lab.com/records/lexicon/host-projection.md)
- [Bounded Reader](https://banes-lab.com/records/lexicon/bounded-reader.md)

## Reinforces

- [Single Source of Truth](https://banes-lab.com/records/architecture/single-source-of-truth.md)

## Enables

- [Traceable Guarantee](https://banes-lab.com/records/lexicon/traceable-guarantee.md)

## Severity

- [mandatory](https://banes-lab.com/records/vocabulary/severity-mandatory.md)

## Category

- [Coordination Surfaces](https://banes-lab.com/records/architecture-category/coordination-surfaces.md)

## Linked from

- [Schema / Canonical Data / Semantics](https://banes-lab.com/ontology/principles/architecture-category-schema-canonical-data-semantics.md)
- [Coordination Surfaces](https://banes-lab.com/ontology/lexicon/lexicon-category-coordination-surfaces.md)
- [Severity levels](https://banes-lab.com/ontology/schema/the-vocabulary-severity.md)

## Evidence in the code

- [models/coordination.model.md](https://banes-lab.com/source/coordination/models/coordination.model.md.md)
