#What it is
Shield is content safety for Go, arranged as six layers ordered by cost and precision, any of which may end evaluation early.
#The layers
- Instinct, under 10ms: injection, jailbreak and exfiltration detection.
- Awareness, under 50ms: PII, topic, sentiment and intent.
- Boundary, under 5ms: hard deny lists on topics, actions and data.
- Values, under 100ms: toxicity, brand safety, honesty rules.
- Judgment, under 500ms: grounding, relevance and compliance scoring.
- Reflex, under 10ms: custom condition-to-action policy rules.
Short-circuiting is the design, not an optimisation. A prompt with an obvious injection string never reaches the grounding check, because no grounding score could contribute to that decision.
#Why ordering beats scoring
A flat pipeline that runs everything needs a combination rule, and combination rules destroy explanation. "Blocked at instinct: jailbreak classifier, confidence 0.94" is auditable, showable to a customer, and testable. "Composite risk 0.71" is none of those, and tuning it moves the score for every other input too.
#Safety profiles
A profile composes the six primitives into a reusable safety character, the counterpart to a Cortex persona. A bank's support bot and an internal engineering assistant get different profiles rather than different toggle combinations on one shared pipeline.
#The blind spot
A message blocked at instinct is never scanned for PII, so its PII content is unknown. That is correct for blocking and wrong for analytics. Running the full chain in shadow mode on a sample is the current workaround, not an answer I am happy with.