# passthrough — the engine that blocks nothing

**layer-free · optional · reads `stream` · writes `stream`**

Brief 34's addendum made literal: "one of those engines could be just passthrough from
the previous layer." Include this engine in a layer and the marking engines' withdrawals
become ADVISORY — a negated word and a sense-switched word keep their marks (the clues
stay written, the contradiction is still said) but nothing is withheld from binding.
Leave it out and the stream is strict. It is the smallest engine in the registry — one
flag — and it exists to make blocking-versus-carrying an explicit, draggable choice
instead of a hidden default.

## the transformation

```
  stream ──────────────────────────────────────────────────────────►

  strict (no passthrough):        advisory (passthrough in the layer):

   connectivity ⊘negated           connectivity ⊘negated ──┐ carried
        │                                                  │
        ✕ withdrawn from bind          marks kept, STILL BINDS
        │                                                  │
        ▼                                                  ▼
   winner changes                  winner as if unnegated, warning stays
```

## official data

None of its own — that is the point. `data.json` records only the **standard** rule: the
flag is global to the run, and the marking engines it relaxes are senses and operators.

## tuning notes

"meaning without connectivity" is the test phrase: strict gives a different winner than
"through"; advisory gives the same winner with the contradiction still spoken. If a
per-layer (rather than per-run) carry is ever wanted — carry senses' withdrawals but not
negation's — the flag becomes a set of engine keys; the brief records this as the next
refinement if the founder asks.
